使用cURL时忽略HTTP响应头代码

时间:2011-11-07 15:45:22

标签: http curl header response

我有以下代码,但由于某种原因我无法获得正确的HTTP响应代码,因为它总是返回0.我已经尝试测试只有“header(”HTTP / 1.1 404 Not Found“)的页面; “并在此页面上运行cURL仍然是0。当我直接进入浏览器中的页面时,标题代码是正确的。有什么想法吗?

        $curl = curl_init();
        curl_setopt($curl, CURLOPT_HTTPHEADER, Array (
        "Content-Type: " . $content_type
        ));         
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_HTTPGET, TRUE);
        curl_setopt($curl, CURLOPT_USERAGENT, RESTClient :: USER_AGENT);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt($curl, CURLOPT_HTTPHEADER, TRUE);
        curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC ); 
        curl_setopt($curl, CURLOPT_USERPWD, $auth);     
        $httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
        echo $httpcode;
        $result = curl_exec($curl);
        curl_close($curl);

1 个答案:

答案 0 :(得分:1)

当然,在执行请求之后才能检索返回代码,这发生在curl_exec()调用之后。在该行之后移动你的curl_getinfo,它应该可以工作。