请问在PHP中设置Curl的超时怎么做

在PHP中设置Curl的超时

我正在通过php在一个eXist数据库上运行一个curl请求。数据集非常大,因此数据库始终需要很长时间才能返回XML响应。为了解决这个问题,我们设置了一个curl请求,应该是一个长超时。

$ch = curl_init();$headers["Content-Length"] = strlen($postString);$headers["User-Agent"] = "Curl/1.0";
curl_setopt($ch, CURLOPT_URL, $requestUrl);curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, 'admin:');curl_setopt($ch,CURLOPT_TIMEOUT,1000);$response = curl_exec($ch);curl_close($ch);

但是,cURL请求在请求完成之前始终结束(通过浏览器请求时<1000)。有人知道这是否是设置卷发超时的正确方式吗?


MM们
浏览 924回答 3
3回答

交互式爱情

嗯,在我看来CURLOPT_TIMEOUT定义任何cURL函数执行所需的时间。我觉得你应该看看CURLOPT_CONNECTTIMEOUT相反,因为这告诉curl等待连接完成的最大时间。
打开App,查看更多内容
随时随地看视频慕课网APP