我有一个网站,使用cURL(最新版本)连接到安全网关进行付款。
问题是cURL总是返回0长度的内容。我只有标题。并且仅当我将cURL设置为返回标头时。我有以下标志。
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_URL, $gatewayURI); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_POST, 1);
返回的标头是
HTTP/1.1 100 Continue HTTP/1.1 200 OK Date: Tue, 25 Nov 2008 01:08:34 GMT Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET Content-Length: 0 Content-Type: text/html Set-Cookie: ASPSESSIONIDxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx; path=/ Cache-control: private
我也尝试过cURL’ing不同的网站,他们返回的内容很好。我认为问题可能与https连接有关。
我已经与公司交谈过,他们没有帮助。
还有其他人遇到此错误并知道解决方法吗?我应该抛弃cURL并尝试使用fsockopen()吗?
fsockopen()
谢谢。:)
您还应该尝试检查curl_error()中的错误消息。在每个curl_ *函数之后,您可能需要执行一次此操作。