我有一个具有以下功能的课程。当我直接调用该函数时,它可以正常工作,但如果我在循环中调用该函数,则会出现错误:Cannot connect to host
。有人能帮助我吗? :)提前谢谢。
public function exportProfile($xml) {
$_myRequest = curl_init("https://www.example.com/postProfile");
curl_setopt($_myRequest, CURLOPT_POST, 1);
curl_setopt($_myRequest, CURLOPT_USERPWD, "testUser:testPassword");
curl_setopt($_myRequest, CURLOPT_HTTPHEADER, Array("Content-Type: application/xml"));
curl_setopt($_myRequest, CURLOPT_POSTFIELDS,$xml );
curl_setopt($_myRequest, CURLOPT_RETURNTRANSFER, 1);
// do request, the response text is available in $_response
$_response = curl_exec($_myRequest);
$err = curl_error($_myRequest) ;
echo $err;
$_statusCode = curl_getinfo($_myRequest, CURLINFO_HTTP_CODE);
// close cURL resource, and free up system resources
curl_close($_myRequest);
return simplexml_load_string($_response);
}
答案 0 :(得分:0)
我无法通过一个简单的例子重现这个问题。您的示例代码似乎在CURLOPT_USERPWD
中有语法错误,但我认为这与此无关。
听起来很可能在您查询的网站上存在速率限制,即当您连续几次击中它们时会将您锁定。
也许您可以通过尝试在循环外多次运行查询来调试,即手动调用它1/2/3次。