php7 curl返回false,php curl请求一直false,但是postman请求正常?

private function _postCurl($url,$body,$header = array(),$type="POST"){

//1.创建一个curl资源

$ch = curl_init();

//2.设置URL和相应的选项

curl_setopt($ch,CURLOPT_URL,$url);//设置url

//1)设置请求头

array_push($header, 'Accept:application/json');

array_push($header,'Accept-Charset:utf-8');

curl_setopt($ch,CURLOPT_HEADER,0);

curl_setopt ($ch, CURLOPT_TIMEOUT,30); // 设置超时限制防止死循环

//设置发起连接前的等待时间,如果设置为0,则无限等待。

curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,5);

//将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

//2)设置提交方式

switch($type){

case "GET":

curl_setopt($ch,CURLOPT_HTTPGET,true);

break;

case "POST":

curl_setopt($ch,CURLOPT_POST,true);

break;

case "PUT"://使用一个自定义的请求信息来代替"GET"或"HEAD"作为HTTP请求。这对于执行"DELETE" 或者其他更隐蔽的HTT

curl_setopt($ch,CURLOPT_CUSTOMREQUEST,"PUT");

break;

case "DELETE":

curl_setopt($ch,CURLOPT_CUSTOMREQUEST,"DELETE");

break;

}

//3)设备请求体

if (count($body)>0) {

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($body));//全部数据使用HTTP协议中的"POST"操作来发送。

}

//设置请求头

if(count($header)>0){

curl_setopt($ch,CURLOPT_HTTPHEADER,$header);

}

//4)"User-Agent: "头的字符串。

curl_setopt($ch, CURLOPT_USERAGENT, 'SSTS Browser/1.0');

curl_setopt($ch, CURLOPT_ENCODING, 'gzip');

curl_setopt ( $ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)' ); // 模拟用户使用的浏览器

//5.抓取URL并把它传递给浏览器

$res=curl_exec($ch);

$result=json_decode($res,true);

//4.关闭curl资源,并且释放系统资源

curl_close($ch);

if(empty($result))

return $res;

else

return $result;

}

php curl post函数如上.调用如下:

$res = $this->_postCurl($url, $_postData);

var_dump($res);die();

$_postData格式如下:['data'=>[["id"=>1,"name"=>"11"],["id"=>2,"name"=>"222"],["id"=>3,"name"=>"3333"]]]

该参数和对应的url,在postman里面通过raw格式请求正常,通过x-www-form-urlencoded请求都正常。。哪位大拿知道为啥吗?

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值