php httpclient 超时怎么办
发布网友
发布时间:2022-04-06 02:58
我来回答
共2个回答
热心网友
时间:2022-04-06 04:27
//HttpClient功能很强大,可以和snoopy一样实行模拟数据提交等操作
使用静态方法quikGet(ur)或者quickPost(url)无法做到设置超时时间,所以做了如下修改,通过下面的方法可以实现
//设置时间超时
$bits = parse_url($main_url);
$host = $bits['host'];
$port = isset($bits['port']) ? $bits['port'] : 80;
$path = isset($bits['path']) ? $bits['path'] : '/';
if (isset($bits['query'])) {
echo $path .= '?'.$bits['query'];
}
// $client = new HttpClient($main_url);
//$client->setDebug(false);
$client = new HttpClient($host, $port);
$client ->timeout =10;
if (!$client->get($path)) {
return false;
} else {
$pageContents = $client->getContent();
}
//
热心网友
时间:2022-04-06 05:45
把超时时间设置长点试试,再不行换个主机ip试试