atol-online/docs/response.md

2.2 KiB
Raw Blame History

Обработка ответа API

Вернуться к содержанию


Объект класса AtolOnline\Api\AtolResponse возвращается всеми методами, которые обращаются к АТОЛ Онлайн API.

Поскольку классы AtolOnline\Api\Fiscalizer и AtolOnline\Api\KktMonitor наследуются от абстрактного AtolOnline\Api\AtolClient, они оба предоставляют метод getLastReponse() для возврата последнего полученного ответа от API.

Таким образом, а общем случае необязательно сразу сохранять ответ в переменную:

$response = $kkt->sell($receipt);

Достаточно обратиться к нему позднее:

$kkt->sell($receipt);
// ...
$response = $kkt->getLastResponse();

Однако, при сложной логике и многократных запросах следует пользоваться этим с умом и осторожностью.

Объект AtolResponse содержит в себе HTTP-код ответа, массив заголовков и JSON-декодированные данные тела ответа.

$headers = $response->getHeaders(); // вернёт заголовки
$code = $response->getCode(); // вернёт код ответа
$body = $response->getContent(); // вернёт JSON-декодированный объект тела ответа

Обращаться к полям тела ответа можно опуская вызов метода getContent():

// вернёт значение поля uuid
$uuid = $response->getContent()->uuid;
$uuid = $response->uuid; 

// вернёт текст ошибки
$err_text = $response->getContent()->error->text;
$err_text = $response->error->text;

Проверка успешности операции доступна через метод isSuccessful():

$response->isSuccessful(); // вернёт true, если ошибок нет

Вернуться к содержанию