Ответ
REST (Representational State Transfer) — это архитектурный стиль для проектирования сетевых API, который использует стандарты и протоколы HTTP.
Ключевые принципы REST:
- Единообразие интерфейса (Uniform Interface):
- Ресурсы идентифицируются URL (например,
/api/users/123). - Действия над ресурсами определяются HTTP-методами (GET, POST, PUT, DELETE).
- Сервер возвращает представление ресурса (часто в JSON или XML).
- Ресурсы идентифицируются URL (например,
- Отсутствие состояния (Stateless): Каждый запрос от клиента должен содержать всю информацию, необходимую серверу для его обработки. Сервер не хранит состояние сессии клиента.
- Кэшируемость (Cacheable): Ответы сервера должны явно указывать, можно ли их кэшировать, что повышает производительность.
Пример типичного REST-взаимодействия: Запрос на получение данных пользователя:
GET /api/users/1 HTTP/1.1
Host: example.com
Accept: application/json
Ответ сервера:
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 1,
"name": "Иван Иванов",
"email": "ivan@example.com"
}
Почему REST популярен: Он прост для понимания, использует вездесущий HTTP, легко интегрируется и хорошо подходит для веб-сервисов и мобильных бэкендов.