>>
知识广场
$response = curl_exec($ch),curl 返回false的问题
导读:
1、请求https网址请求地址是https的,需要curl_exec($ch);之前设置curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);curl_set…
1、请求https网址
请求地址是https的,需要curl_exec($ch);之前设置
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
2、暂时无法发现问题
可直接在curl_exec($ch);之前加上
var_dump(curl_error($ch));
如果有问题即可直接打印出来。
3、curl请求链接含空格
这个是意外发现的,网上很多地方都没找到,还是无意中在对照了某某的api接口文档才发现的。
使用curl来请求数据时curl的url地址中的任何地方不能有空格存在,不然会返回一个你琢磨不透的false
代码如下:
//传送json文件--------------
function postJson($url,$jsonStr)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonStr);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json; charset=utf-8',
'Content-Length:'.strlen($jsonStr)
));
//---https------
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
//---https------
//var_dump(curl_error($ch));
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return array($httpCode, $response);
}
相关推荐
$response = curl_exec($ch),curl 返回false的问题
1、请求https网址请求地址是https的,需要curl_exec($ch);之前设置curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);curl_set…
2022-08-24 22:00:53 | 分类:PHP | 作者:myerob | 阅读:75 | 标签:curl_exec curl | 收藏