🔥 HTTP-методы в REST API: это спросят на собеседовании 🔥
GET, POST, PUT, PATCH и DELETE - виды методов, часть протокола HTTP. Используются в архитектурном стиле REST API.
Нужны, чтобы стандартизировать взаимодействие между клиентом и сервером.
Каждый метод выполняет определённое действие и соответствует логике CRUD-модели (Create, Read, Update, Delete).
🩷 GET - Чтение данных
Не поддерживает тело - Body (JSON).
Идемпотентен.
💚 POST - Создание ресурсов (объектов в БД)
Поддерживает тело - Body (JSON).
Не идемпотентен.
* Исключения, когда POST используют для чтения: сложные запросы с большим кол-вом фильтров, асинхронные операции.
** Почему в некоторых REST API все POST? Потому что они не REST API, а HTTP API.
💙 PUT - Полная замена и/или создание ресурса
В теле JSON требует полный объект.
Идемпотентен.
* Часто используют только для изменения.
💜 PATCH - Частичное обновление ресурса
В теле JSON передаются только те поля объекта, которые нужно изменить.
Не идемпотентен.
❤️ DELETE - Удаление ресурса.
Не поддерживает тело - Body (JSON).
Идемпотентен.
💛 А что по поводу TRACE, HEAD, OPTIONS, CONNECT?
Могут быть заменены GET-ом.
Очень маленький шанс встретить или применить на практике.
Правильное использование HTTP-методов в REST API упрощает взаимодействие с вашей системой, так как делает API предсказуемым и удобным для разработчиков.
P.S. Ссылка на подкаст про идемпотентность и коммутативность в API
#RestApiGA
Post #2791
4.93K






- 👍 21
- ❤ 6
- 🔥 4
- ❤🔥 2
- 💯 2
- 👌 1