REST API в протоколе HTTP
Как правило при создании сайтов для получения, создания, изменения и удаления данных используются только методы GET и POST, так как они хорошо поддерживаются браузерами и серверами. То же самое относится и к API, предоставляемым сайтами. Существуют, однако, специальные подходы, стандартизирующие API для общего удобства как разработчиков API, так и его пользователей.
Одним из подходов является REST API (часто говорят RESTful употребляя это слово в качестве прилагательного). В основе этого API лежит широкое использование методов протокола HTTP. В данном подходе с помощью метода GET получаются данные, с помощью метода POST создаются, с помощью метода PUT изменяются, а с помощью метода DELETE - удаляются.
Для примера давайте рассмотрим некое API, манипулирующее юзерами. Давайте посмотрим, как будут выглядеть URL для различных действий.
Получаем всех юзеров:
GET http://api.loc/users/
Получаем одного юзера по его id
:
GET http://api.loc/user/1/
Создаем юзера:
POST http://api.loc/user/
Изменяем юзера по его id
:
PUT http://api.loc/user/1/
Удаляем юзера по его id
:
DELETE http://api.loc/user/1/
Пусть у вас есть API продуктов интернет магазина. Распишите урлы магазина так, чтобы API стало RESTful.