Вызов неопределенного метода GuzzleHttp \ Psr7 \ Response :: isSuccessful ()

Итак, я установил библиотеку Guzzle версии 6 в соответствии с Календарная документация TeamUp. Тем не менее, когда я пытаюсь запустить код ниже, я получаю

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

код:

<?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":{ ... }}
}

Не должны содержаться в библиотеке?
Кто-нибудь?

2

Решение

Да нет способа isSuccessful,
По умолчанию Guzzle выдаст исключение, если сервер вернет ошибку

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

GuzzleHttp \ Exception \ ServerException выбрасывается за 500 ошибок уровня
если для опции запроса http_errors установлено значение true.

GuzzleHttp \ Exception \ ClientException выбрасывается за 400 ошибок уровня
если для опции запроса http_errors установлено значение true.

В случае сетевой ошибки (тайм-аут соединения, ошибки DNS,
и т.д.), выбрасывается GuzzleHttp \ Exception \ RequestException.

Во всяком случае, вы можете проверить код состояния ответа с помощью

$res->getStatusCode();
1

Другие решения

обновить заметки с Guzzle 5.0 до Guzzle 6.0 скажем:

GuzzleHttp \ Message \ Response :: isSuccessful () и другие связанные методы были удалены. Используйте взамен getStatusCode ().

0

По вопросам рекламы [email protected]