Единообразие интерфейса (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