PHP 模拟CURL分别GET POST进行HTTP请求
2017-12-15 13:30
706 查看
在调用接口的过程中 我们需要模拟浏览器请求,这个时候作为PHP开发者,我们可以利用CURL进行模拟HTTP请求
1、curl以POST方式请求https协议接口 /**
* 传入json数据进行HTTP POST请求
*
* @param string $url $data_string
* @return string
*/
public static function http_post($url,$data_string,$timeout = 60)
{
//curl验证成功
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS,$data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);//// 跳过证书检查
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string)
));
$result = curl_exec($ch);
if (curl_errno($ch)) {
print curl_error($ch);
}
curl_close($ch);
return $result;
}
2、curl以GET方式请求https协议接口
/**
* 传入json数据进行HTTP Get请求
*
* @param string $url $data_string
* @return string
*/
public function http_get($url)
{
$curl = curl_init(); // 启动一个CURL会话
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); // 从证书中检查SSL加密算法是否存在
$tmpInfo = curl_exec($curl); //返回api的json对象
//关闭URL请求
curl_close($curl);
return $tmpInfo; //返回json对象
}
1、curl以POST方式请求https协议接口 /**
* 传入json数据进行HTTP POST请求
*
* @param string $url $data_string
* @return string
*/
public static function http_post($url,$data_string,$timeout = 60)
{
//curl验证成功
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS,$data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);//// 跳过证书检查
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string)
));
$result = curl_exec($ch);
if (curl_errno($ch)) {
print curl_error($ch);
}
curl_close($ch);
return $result;
}
2、curl以GET方式请求https协议接口
/**
* 传入json数据进行HTTP Get请求
*
* @param string $url $data_string
* @return string
*/
public function http_get($url)
{
$curl = curl_init(); // 启动一个CURL会话
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); // 从证书中检查SSL加密算法是否存在
$tmpInfo = curl_exec($curl); //返回api的json对象
//关闭URL请求
curl_close($curl);
return $tmpInfo; //返回json对象
}
相关文章推荐
- php的curl函数模拟post、get数据提交,速度非常慢的处理办法
- PHP中使用CURL模拟发送GET,POST,PUT,DELETE请求
- PHP:CURL分别以GET、POST方式请求HTTPS协议接口api
- CURL模拟进行微信接口的GET与POST
- php小代码----curl模拟登录及登录后并通过多线程进行重复post数据提交
- php 模拟浏览器 发送 post 和 get 请求(兼容curl + file_get_contents)
- php中利用curl模拟get请求时,数据包含空格会进行隔断操作,只得到部分数据
- php的curl函数模拟post、get数据提交,速度非常慢的处理办法
- PHP发送POST请求的三种方式 分别使用curl file_get_content fsocket 来实现post提交数据
- PHP之文件操作,http请求数据格式,模拟get和post,CURL模拟请求的使用
- php 模拟 post curl sock file_get_contents
- php中使用curl模拟get请求和post请求
- PHP:CURL分别以GET、POST方式请求HTTPS协议接口api
- php使用CURL模拟GET与POST向微信接口提交及获取数据的方法
- php使用curl可以get 模拟post
- PHP:CURL分别以GET、POST方式请求HTTPS协议接口api
- [PHP学习教程 - 网络]004.模拟发送HTTP请求[GET/POST](HTTP Simulator)
- PHP使用curl模拟post上传及接收文件的方法
- PHP使用curl模拟post上传及接收文件的方法
- Linux 下curl模拟Http 的get or post请求。