Ответ
В REST API я работаю со стандартными HTTP-методами, которые соответствуют операциям CRUD:
- GET: Получение данных. Например, получение списка пользователей или конкретного пользователя по ID. Это идемпотентный и безопасный метод.
- POST: Создание нового ресурса. Например, отправка данных формы для создания новой записи. Не является идемпотентным.
- PUT: Полное обновление существующего ресурса. Ожидается, что клиент отправляет полное представление ресурса. Идемпотентный.
- PATCH: Частичное обновление ресурса. Клиент отправляет только изменяемые поля. Идемпотентность зависит от реализации сервера.
- DELETE: Удаление ресурса. Идемпотентный.
Также существуют менее распространенные методы, такие как HEAD (получение только заголовков ответа) и OPTIONS (определение поддерживаемых методов для ресурса).
В Python при использовании библиотеки requests это выглядит так:
import requests
# GET запрос
response = requests.get('https://api.example.com/users/1')
# POST запрос
new_user = {'name': 'Alice', 'email': 'alice@example.com'}
response = requests.post('https://api.example.com/users', json=new_user)
# PUT запрос
updated_data = {'name': 'Alice Smith', 'email': 'alice.smith@example.com'}
response = requests.put('https://api.example.com/users/1', json=updated_data)
# DELETE запрос
response = requests.delete('https://api.example.com/users/1')