我知道如何在cURL中设置超时但我想提醒用户请求超时。
我创建了一个ajax脚本,允许用户从各个保险站点请求数据并聚合到列表中。如果任何保险站点在一定时间内未能响应,我想提醒用户此时该公司的当前报价不可用。
cURL会返回任何信号表示超时吗?
我知道如何在cURL中设置超时但我想提醒用户请求超时。
我创建了一个ajax脚本,允许用户从各个保险站点请求数据并聚合到列表中。如果任何保险站点在一定时间内未能响应,我想提醒用户此时该公司的当前报价不可用。
cURL会返回任何信号表示超时吗?
curl_errno()
如果操作超时,则返回28。看到 http://curl.haxx.se/libcurl/c/libcurl-errors.html 其他错误代码。
或者可以覆盖更多情况的另一个解决方案(服务器超时,服务器错误地显示空白页面)是检查get_url函数结果是否与“”或“FALSE”不同。
get_url函数示例:
function get_url($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
$tmp = curl_exec($ch);
curl_close($ch);
return $tmp;
}