Download the PHP package wakeapp/api-platform-bundle without Composer
On this page you can find all versions of the php package wakeapp/api-platform-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download wakeapp/api-platform-bundle
More information about wakeapp/api-platform-bundle
Files in wakeapp/api-platform-bundle
Package api-platform-bundle
Short Description For this package there is no description available.
License
Informations about the package api-platform-bundle
Api Platform Bundle
Введение
Бандл расширяет компонет Symfony http-foundation позволя выделить работу с API в отдельную инкапсулированную зону.
Предоставляется работа с контентом запроса в формате JSON посредством ParameterBag.
Архитектура бандла не допускает фатального падения в зоне API и всегда возвращает валидный ответ
с соответствующем кодом ошибки. Полный список кодов ошибок доступен в виде констант в классе
ApiException.
Для описания спецификации API обязательно использование Swagger 2 в одном из форматов:
- NelmioApiDocBundle.
- swagger-php.
- Использование файла конфигурации в формате
jsonилиyaml(yml).
Установка
Шаг 1: Загрузка бандла
Откройте консоль и, перейдя в директорию проекта, выполните следующую команду для загрузки наиболее подходящей стабильной версии этого бандла:
Эта команда подразумевает что Composer установлен и доступен глобально.
Шаг 2: Подключение бандла
После включите бандл добавив его в список зарегистрированных бандлов в app/AppKernel.php файл вашего проекта:
Конфигурация
Чтобы начать использовать бандл требуется определить создать и определить guesser - объект содержащий правила
определения зоны API вашего проекта.
Примечание: Если вы не используете autowire то вам необходимо зарегистрировать ApiAreaGuesser как сервис.
Полный набор параметров
Использование
Использование функционала бандла начинается с создание контроллера и первого метода в указанной зоне API. В качестве примера рассмотрим возвращение простейшего профиля пользователя.
Для начала нам необходимо создать DTO возвращаемых данных:
Теперь добавим контроллер с соответствующим методом. Примечание: в качестве примера реализации используется подключение NelmioApiDocBundle.
Дополнительно
Как комбинировать body параметры с query и/или path
Объект на DTO:
Контроллер:
Как описать в формат обертки ответа в аннотациях
Чтобы описать формат обертки ответа Wakeapp\Bundle\ApiPlatformBundle\Dto\ApiResultDto при помощи аннотаций
можно использовать следующий подход:
Шаг 1 Создайте собственный ответ сервера:
Шаг 2 Добавьте в конфигурацию:
Шаг 3 Добавьте описание к вашему методу: