3

So I have installed the Guzzle library version 6 according to TeamUp calendar documentation. However, when I try to run the code below I get

Fatal error: Call to undefined method GuzzleHttp\Psr7\Response::isSuccessful()  

code:

<?php
include 'vendor/autoload.php';

define('API_KEY','****ww9d5ea2b0540ba1e02c08100b0e5**');

$client = new GuzzleHttp\Client(['headers' => ['Teamup-Token' => API_KEY]]);
$res = $client->get('https://api.teamup.com/ks************/events?startDate=2016-08-21&endDate=2016-08-25');

if ($res->isSuccessful()) {
    echo $res->getBody();
    // {"event":{ ... }}
}

Shouldn't be contained in Library? Anyone?

4

2 に答える 2

2

はい、方法はありませんisSuccessful。デフォルトでは、サーバーがエラーを返した場合、Guzzle は例外をスローします。

http://docs.guzzlephp.org/en/latest/quickstart.html

http_errors リクエスト オプションが true に設定されている場合、500 レベルのエラーに対して GuzzleHttp\Exception\ServerException がスローされます。

http_errors リクエスト オプションが true に設定されている場合、400 レベルのエラーに対して GuzzleHttp\Exception\ClientException がスローされます。

ネットワーク エラー (接続タイムアウト、DNS エラーなど) が発生した場合、GuzzleHttp\Exception\RequestException がスローされます。

とにかく、を使用して応答のステータスコードを確認できます

$res->getStatusCode();
于 2016-08-24T06:19:37.190 に答える