Единообразие интерфейса (CRUD)

Операции в REST

RESTful API сводится к четырем базовым операциям :

НазваниеHTTPОписание

Создание новых данных

POST

POST-запрос используется для создания нового ресурса на сервере. Он передает данные, которые должны быть использованы для создания нового ресурса. В отличие от PUT-запроса, POST-запрос не требует знания о существующих ресурсах и их идентификаторах.

Получение данных

GET

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

Обновление данных

PUT

PUT-запрос используется для обновления существующих данных на сервере. Он требует передачи полного обновленного набора данных для указанного ресурса. Если ресурс не существует, сервер может создать его, в зависимости от реализации. *Альтернатива: PATCH-запрос, частично обновляет ресурс с определенными изменениями.

Удаление данных

DELETE

DELETE-запрос используется для удаления указанного ресурса на сервере. Он не требует передачи дополнительных данных.

Характеристики операций

Безопасность

Если операция может изменить ресурс — она называется небезопасной в рамках REST архитектуры.

GET, OPTIONS, HEAD — работают только на чтение, поэтому они безопасны для ресурса.

POST, PUT, DELETE — могут модифицировать данные, поэтому они небезопасные.

Идемпотентность

Идемпотентная операция — действие, многократное повторение которого эквивалентно однократному.

PUT, GET, OPTIONS, DELETE, HEAD — идемпотентные.

POST, PATCH — неидемпотентные.

Источники:

Last updated