Типы результатов

При выполнении запросов приходят объекты ответов, наследующих интерфейсы для разных типов ответов:

  • Response - общий интерфейс ответа

  • ListResponse - интерфейс ответа списочных методов. Содержит методы для получения информации о пагинации

  • BatchResponse - интерфейс ответа batch-запроса. Содержит методы для получения ответов для каждого вложенного запроса в виде Response или ListResponse

В рамках реализованных классов ядра или команд, все выполненные запросы автоматически определяют интерфейс ответа, который необходимо вернуть. например для метода batch ответом всегда будет BatchResponse. Если метод заканчивается на ‘.list’ или в ответе пришёл параметр total, будет возвращён ListResponse.

Стоит отметить, что некоторые ответы могут не содержать информацию об http-запросе или выполненной команде ввиду способа их создания.

Например при выполнении bacth запроса в обёртке Pranju\Bitrix24\Core\Batch, запросы выполняются по-разному в зависимости от их количества:

  • Если запрос всего один, он будет выполнен вне batch и обёрнут в UnlimitedBatchResponse

  • Если запросов от 2 до 50, вернётся BatchResponse

  • Если запросов больше 50, ответ будет обёрнут в UnlimitedBatchResponse

В отличие от BatchResponse, UnlimitedBatchResponse может не содержать http ответа и команды.

Last updated