Каким должно быть API, чтобы оно считалось RESTful?
Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Характеристики RESTful API
RESTful API базируется на архитектурных принципах REST (Representational State Transfer), сформулированных Роем Филдингом в его диссертации в 2000 году. Это не просто HTTP API с JSON — это набор строгих требований.
Шесть основных ограничений REST
1. Клиент-сервер архитектура
Разделение ответственности между клиентом и сервером.
2. Statelessness (без состояния)
Каждый запрос содержит всю необходимую информацию. Сервер не хранит сессию между запросами.
3. Uniform Interface (единообразный интерфейс)
Включает: идентификация ресурсов в URI, манипуляция через представления, самоописывающиеся сообщения, HATEOAS.
4. Cacheability (кэшируемость)
Ответы должны явно указывать, кэшируемы они или нет через заголовки Cache-Control и ETag.
5. Layered System (многоуровневая система)
Клиент не должен знать о внутренней структуре системы.
HTTP методы по назначению
- GET: получить ресурс
- POST: создать новый ресурс
- PUT: заменить ресурс полностью
- PATCH: частичное обновление
- DELETE: удалить ресурс
Ключевые принципы
- Resource-oriented: операции на ресурсах
- Stateless: каждый запрос независим
- Cacheable: явная политика кэширования
- Uniform interface: предсказуемо
- Self-descriptive: клиент понимает ответ