Download the PHP package s25/prices-client without Composer
On this page you can find all versions of the php package s25/prices-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download s25/prices-client
More information about s25/prices-client
Files in s25/prices-client
Package prices-client
Short Description Client for parts' prices' services
License proprietary
Informations about the package prices-client
Обзор
S25\PricesApiClient\Client - класс клиента API, включает методы вида requestApiMethod, возвращающие инстансы запросов, реализующие интерфейс S25\PricesApiClient\Contract\ApiMethodRequestContract.
Интерфейсы запросов наследуют из базового интерфейса методы perform() и performAsync() для синхронного и асинхронного выполнения соответственно.
В комментарии интерфейса запроса есть информация об:
- обязательных сеттерах, вызываемых перед выполнением запроса,
- формате возвращаемых данных.
Сервис не проверяет наличие поставщиков, брэндов, номеров и прочих объектов и связей между ними, только форматы некоторых входных данных. При запросе несуществующих или отключенных объектов, ответ сервера будет содержать только данные по корректным объектам.
Входные и выходные данные
Все методы API-запросов следуют следующим соглашениям:
Методы setRawNumber(s)?
принимают номер/массив номеров без форматирования,
только [0-9A-Z].
Методы вида set{Param}s
всегда идут в паре с add{Param}
для попунктного
заполнения параметров.
Возвращаемые цены всегда за упаковку. Лучшие цены рассчитываются исходя из
отношения цена за уп.
/кол-во в уп.
, но в результат попадают только цены за
упаковку.
Пример инициализации клиента API
Инстанцируем клиент, запрос, указываем необходимые параметры запроса.
Далее, получение данных может быть как синхронным:
, так и асинхронным:
Генераторы
Дополнительны метод iterate
класса PaginateAllRequestContract
позволяет последовательно получить все цены для всех товаров в цикле foreach: