Middle
41
questionbank

Какие правила архитектуры REST вы знаете?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech
  1. Клиент-серверная архитектура: Четкое разделение обязанностей между клиентом, запрашивающим ресурсы, и сервером, предоставляющим их.
  2. Отсутствие состояния (Stateless): Каждый запрос от клиента к серверу должен содержать всю необходимую информацию для понимания и обработки запроса. Сервер не хранит информацию о предыдущих запросах клиента.
  3. Кэшируемость (Cacheable): Ответы от сервера могут быть помечены как кэшируемые или некэшируемые, что позволяет клиентам переиспользовать полученные ответы для повышения производительности.
  4. Единообразный интерфейс (Uniform Interface): Четыре ограничения:
    • Идентификация ресурсов (Identification of resources): Ресурсы идентифицируются с помощью URI.
    • Манипуляции ресурсами через представления (Manipulation of resources through representations): Клиент взаимодействует с ресурсом через передачу представлений ресурса.
    • Самоописывающиеся сообщения (Self-descriptive messages): Каждое сообщение содержит достаточно информации, чтобы понять, как его обработать (например, тип содержимого).
    • HATEOAS (Hypermedia as the Engine of Application State): Клиент переходит между ресурсами, следуя ссылкам в ответах сервера.
  5. Многоуровневая система (Layered System): Архитектура позволяет использовать промежуточные слои (например, прокси-серверы, шлюзы) между клиентом и сервером, не влияя на их взаимодействие.
  6. Код по требованию (Code on Demand - Optional): Сервер может временно расширять или настраивать функциональность клиента, передавая исполняемый код (например, JavaScript). Является необязательным правилом.