我正在尝试请求一个url但它失败了,当我转储curl exec的结果时,它返回false。
http://mydomain.com:8807/getstate/?zipcode=22311&field=statecode
在浏览器中我可以访问它并返回正确的HTTP内容正文,内容类型为text / html。
如果我将其更改为:
http://mydomain.com:8807/getstate/?zipcode=22311&field=state
除了参数值不同之外,哪个是相同的REST服务,我的curl工作正常。怎么会这样?
我没有发出多个请求,我只做一个实例..
$url = 'http://mydomain.com:8807/getstate/?zipcode=22311&field=state';
除了参数值不同之外,哪个是相同的REST服务,我的curl工作正常。怎么会这样?
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 10 );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true);
$request = curl_exec( $ch );
var_dump($request);
我非常好,这不是一个错字,想不出一个理由。它为状态代码返回bool(false)
,但为状态返回正确的内容。
更新:似乎响应标头不正确 - 浏览器宽松并呈现页面,无论标头是否不正确(或缺少标头)。