Как сделать REST API на Symfony в PHP. Полный гайд для разработчиков backend

Published: 13 May 2024
on channel: Mikhail Bukachuk
2,018
83

Открытый канал в телеге - https://t.me/PHPnoob
Чат взаимопомощи PHP - https://t.me/php_noob

В этом видео мы построим учебное приложение реализующее REST API. Для этого мы научимся отдавать данные в JSON. Разберемся с тем как работает компонет Symfony/Serializer. Также обработаем запрос POST с телом запроса в формате JSON. Сначала сделаем это с помощью обычной Symfony/Form формы. Далее попробуем это сделать через специальный Dto объект. Также полученные контроллеры покроем функциональными Unit тестами.

Все видео курса в плейлисте:

   • Symfony фреймворк  

REST API - это интерфейс программирования приложений (API), который использует принципы архитектуры REST (Representational State Transfer) для обмена данными между клиентом и сервером посредством стандартных HTTP-запросов, таких как GET, POST, PUT, DELETE. Он позволяет клиентам получать, отправлять, изменять и удалять данные на удаленном сервере.

REST API обычно строится вокруг ресурсов (например, пользователей, продуктов, заказов), каждый из которых имеет уникальный идентификатор (URI). Данные передаются в формате JSON или XML, обеспечивая гибкость и универсальность.

Преимущества REST API включают простоту использования, масштабируемость, гибкость и независимость от платформы. Он широко используется для создания веб-сервисов, мобильных приложений и интеграции различных систем.

00:00 Что будем делать и что такое REST API
03:00 Разбираемся с программой Postman
05:30 Делаем первый REST API запрос к серверу на Symfony 6 PHP
06:30 Делаем первый метод контроллера который возвращает JsonResponse
08:00 Использование переменных среды в Postman
10:00 Использование Symfony/Serializer для конвертации данных в JSON. Настройка в services.yml
13:00 Работа аттрибута [Ignore] для скрытия полей сущности в JSON ответе сервера
23:00 Добавление групп валидации для разной конвертации данных в json
30:00 Делаем добавление блога через JSON запрос и стандартную форму Symfony
35:00 Логин в систему через JSON запрос используя стандартную авторизацию Symfony
38:00 Краткий обзор LexikJWTAuthenticationBundle для перевода авторизации на JWT
40:00 Использование HTTP метода DELETE для удаления данных. Удаляем блог по REST API запросу
45:00 Использование возможностей Symfony 6 для маппинга query string в объект. Аттрибут [MapQueryString]
46:30 Переделываем фильтр блогов BlogFilter с помощью [MapQueryString]
47:00 Как экспортировать коллецию Postman в JSON файл
49:00 Исправляем проблему с настройками Serializer в services.yml
55:00 Использование DTO для создания сущности блога
56:00 Использование возможностей PHP 8.2 для объявления public свойств DTO readonly
01:02:00 Зачем нужен свой Resolver в [MapRequestPayload] и как приблизительно его сделать
01:04:00 Покрываем новый контроллер функциональными Unit тестами
01:08:00 Использование в Unit тестами loginUser для выполнения запросов от авторизованного пользователя
01:11:00 Добавление дополнительных asserts с помощью пакета phpunit-json-assert
01:15:00 Пишем тесты на метод удаления и находим баг с потерянной миграцией таблицы comments. Исправляем пропущенную миграцию.
01:16:00 Еще раз прогововариваем, что сделали сегодня

#php #symfony #restapi #json #обучение #программирование #обучающие


Watch video Как сделать REST API на Symfony в PHP. Полный гайд для разработчиков backend online without registration, duration hours minute second in high quality. This video was added by user Mikhail Bukachuk 13 May 2024, don't forget to share it with your friends and acquaintances, it has been viewed on our site 2,018 once and liked it 83 people.