PHP cURL不适用于Xampp Windows 10
我使用curl从web上不同位置托管的不同web服务获取数据。我正在尝试将数据提取到本地主机PHP cURL不适用于Xampp Windows 10,php,curl,Php,Curl,我使用curl从web上不同位置托管的不同web服务获取数据。我正在尝试将数据提取到本地主机 $token1="SOMETOKENXX"; $mobileNumber= $_POST['number']; $postData = array( 'mobile' =>$mobileNumber ); $service_url ='http://api.hashtagloyalty.in/merchant
$token1="SOMETOKENXX";
$mobileNumber= $_POST['number'];
$postData = array(
'mobile' =>$mobileNumber
);
$service_url ='http://api.hashtagloyalty.in/merchants/users/users_profile';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $service_url);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_PORT, 8080);
curl_setopt($curl, CURLOPT_USERAGENT , "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17");
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($postData));
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json','Authorization:'.$token1));
$curl_response = curl_exec($curl);
// echo($curl_response);
if ($curl_response === false)
{
$info = curl_getinfo($curl);
die('error occured during curl exec. Additioanl info: ' . var_export($info));
}else{
echo "TRUE";
}
curl_close($curl);
我无法在xampp localhost上获取结果,但正在GoDaddy live server上工作
我正在开发最新版本的xampp 7.2.6和Windows 10操作系统
我在端口8080上访问我的localhost意味着我的localhots url是localhost:8080
我如何知道是否有东西阻止了我的请求?
没有结果,并且给出空结果
请帮忙
error
array ( 'url' => 'http://api.hashtagloyalty.in/merchants/users/users_profile', 'content_type' => NULL, 'http_code' => 0, 'header_size' => 0, 'request_size' => 0, 'filetime' => -1, 'ssl_verify_result' => 0, 'redirect_count' => 0, 'total_time' => 20.204, 'namelookup_time' => 1.0E-6, 'connect_time' => 0.0, 'pretransfer_time' => 0.0, 'size_upload' => 0.0, 'size_download' => 0.0, 'speed_download' => 0.0, 'speed_upload' => 0.0, 'download_content_length' => -1.0, 'upload_content_length' => -1.0, 'starttransfer_time' => 0.0, 'redirect_time' => 0.0, 'redirect_url' => '', 'primary_ip' => '', 'certinfo' => array ( ), 'primary_port' => 0, 'local_ip' => '', 'local_port' => 0, )error occured during curl exec. Additioanl info:
可能是防火墙问题
cURL使用可能未打开的端口1080 几种修复方法:
打开防火墙/路由器中的端口1080 或 为cURL指定一个(工作)端口
curl\u setopt($curl,CURLOPT\u PORT,PortYouWantHere)
curl
无法工作,因为我所在组织的代理阻止了请求。因此,我添加了以下代码,效果非常好:)
curl\u setopt($ch,CURLOPT\u PROXY,$proxyhostandpass);
curl_setopt($ch,CURLOPT_PROXYUSERPWD,$proxyusernamepass)代码>实际上,curl应该提供一些输出,而不仅仅是一个空结果。对我来说,一无所有似乎有点奇怪。无论如何:有些服务器不接受带有空用户代理的请求。因此,尝试在变量CURLOPT_USERAGENTI am中使用现代头文件,如Mozilla/5.0(Windows NT 6.1;WOW64)、AppleWebKit/537.17(KHTML,如Gecko)Chrome/24.0.1312.52 Safari/537.17,会出现错误。更新了问题项,您是否已使用curl\u error()
找出实际问题?我发现:无法连接到api.hashtagloyalty.in端口8080:超时您确定运行api url的Web服务器在8080上侦听吗?你有ssh访问权限吗?通过netstat-plnt检查打开的端口,查看什么阻止了您的请求,转到浏览器的开发工具并打开网络tsbI不了解网络选项卡。你能帮忙吗?