【问题标题】:Get response code, headers and contents from curl_exec从 curl_exec 获取响应代码、标头和内容
【发布时间】:2020-02-24 16:44:23
【问题描述】:

我似乎无法从 curl_exec 中获取响应代码、标头和内容。

这是我的最后一次尝试:

$url = '...';
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_CAINFO, 'PATH_TO_.cer');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//curl_setopt($curl, CURLOPT_HEADER, true); //ATTEMPT1
/*curl_setopt($curl, CURLOPT_HEADERFUNCTION, function($curl, $header) use (&$headers){ //ATTEMPT2
    $len = strlen($header);
    $header = explode(':', $header, 2);
    if (count($header) < 2){ // ignore invalid headers
        return $len;
    }
    $headers[strtolower(trim($header[0]))][] = trim($header[1]);
    print_r($headers);
    return $len;
});*/
$contents = curl_exec($curl);
curl_close($curl);

我试过 ATTEMPT1 和 ATTEMPT2

在我的请求头中,有很多字段,例如速率限制,我每次都需要检索,但我还需要响应代码和请求的内容。

编辑:到目前为止,我发现我需要使用 ATTEMPT1 而不是 ATTEMPT2,因为最后一个只是手工制作的版本,我似乎无法理解这是摆脱了响应代码在标题中。

【问题讨论】:

    标签: php curl http-headers http-response-codes httpcontent


    【解决方案1】:

    您正在寻找curl_getinfo()

    例如获取响应码:

    $http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
    

    【讨论】:

      猜你喜欢
      • 2019-04-15
      • 1970-01-01
      • 2015-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-22
      • 1970-01-01
      • 2014-10-10
      相关资源
      最近更新 更多