Skip to content

Latest commit

 

History

History
44 lines (36 loc) · 1.97 KB

response.md

File metadata and controls

44 lines (36 loc) · 1.97 KB

Работа с MindboxResponse

При любом успешно выполненном запросе SDK возвращает пользователю объект MindboxResponse.

Доступные пользователю методы MindboxResponse:

  • isError() - возвращает true или false в зависимости от успеха выполнения операции;
  • getBody() - возвращает тело ответа в виде массива;
  • getMindboxStatus() - возвращает статус Mindbox, если он присутствует в ответе;
  • getResult() - возвращает тело ответа в виде DTO;
  • getValidationErrors() - возвращает ошибки валидации, если такие есть в ответе;
  • getHttpCode() - возвращает HTTP код ответа;
  • getHeaders() - возвращает массив заголовков ответа;
  • getRawBody() - возвращает "сырое" тело ответа (XML|JSON);
  • getRequest() - возвращает связанный экземпляр запроса;

Пример работы с результатом запроса к Mindbox API

$logger = new \Mindbox\Loggers\MindboxFileLogger('{logsDir}');

$mindbox = new \Mindbox\Mindbox([
    'endpointId' => '{endpointId}',
    'secretKey' => '{secretKey}',
    'domainZone' => '{domainZone}',
], $logger);

try {
    $response = $mindbox->order()
        ->getOrders(10, 252, 0, 'DirectCrm.V21CustomerOrderListOperation')
        ->sendRequest();
} catch (\Mindbox\Exceptions\MindboxClientException $e) {
    echo $e->getMessage().PHP_EOL;

    $response = $mindbox->order()->getLastResponse();
    var_dump($response->isError()); // вернет true
    return;
}

foreach ($response->getResult()->getOrders() as $order) {
    /* @var $order \Mindbox\DTO\V2\Responses\OrderResponseDTO */
    var_dump($order->discountedTotalPrice());
    var_dump($order->getLines());
}