【问题标题】:Curl / Guzzle - get header / response code without bodyCurl / Guzzle - 获取没有正文的标题/响应代码
【发布时间】:2015-04-06 01:15:20
【问题描述】:

要使用 curl 获取网站的状态码,您可以使用 CURLOPT NOBODY。

例子:

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://www.example.com');
curl_setopt($curl , CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$status = curl_exec($curl);
curl_close($curl);

下面的例子与 Guzzle 作为 http 库是否一样:

    $guzzle = new Client();
    $req = $guzzle->createRequest('GET', 'http://www.example.com');
    $result = $guzzle->send($req);

    $status = $result->getStatusCode();

我的目标是在不获取身体的情况下执行 curl/guzzle 请求。使用 Guzzle 的请求是否只会获取状态码而不浪费其他数据带宽?

【问题讨论】:

    标签: http curl request guzzle


    【解决方案1】:

    为了在不下载整个内容的情况下获取响应的状态码,您应该使用“head”方法:

    $client = new \GuzzleHttp\Client();
    $response = $client->head('http://example.com/');
    echo $response->getStatusCode();
    

    【讨论】:

      猜你喜欢
      • 2012-04-01
      • 2015-04-13
      • 1970-01-01
      • 2020-05-09
      • 2015-04-25
      • 1970-01-01
      • 2015-11-14
      • 2015-08-13
      相关资源
      最近更新 更多