Junior
62
questionbank

Что такое REST API?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

REST API — это архитектурный стиль, а не стандарт, для построения распределенных систем. Он основан на принципах, таких как statelessness, клиент-серверная архитектура и использование стандартных HTTP-методов (GET, POST, PUT, DELETE, PATCH) для операций над ресурсами.

Ключевые принципы REST:

  • Stateless (отсутствие состояния): Сервер не хранит информацию о состоянии клиента между запросами. Каждый запрос содержит всю необходимую информацию для его обработки.
  • Client-Server (клиент-сервер): Четкое разделение клиента и сервера. Каждый может развиваться независимо.
  • Cacheable (кэшируемый): Ответы могут быть помечены как кэшируемые или не кэшируемые, что улучшает производительность.
  • Layered System (многоуровневая система): Клиент не может узнать, напрямую ли он подключен к серверу, или через промежуточные слои.
  • Uniform Interface (единообразный интерфейс): Стандартизованные способы взаимодействия с ресурсами. Включает:
    • Идентификация ресурсов (URI)
    • Манипуляции ресурсами через представление (информация о ресурсе передается в representations)
    • Самоописывающиеся сообщения (каждое сообщение содержит достаточную информацию для обработки)
    • Hypermedia as the Engine of Application State (HATEOAS) - состояние приложения управляется гиперссылками.

Пример использования стандартных HTTP-методов:

Метод HTTPДействие над ресурсом (например, /users)Описание
GET/users или /users/{id}Получение списка пользователей или конкретного пользователя.
POST/usersСоздание нового пользователя.
PUT/users/{id}Полное обновление данных пользователя по его ID.
PATCH/users/{id}Частичное обновление данных пользователя по его ID.
DELETE/users/{id}Удаление пользователя по его ID.

REST API используются для взаимодействия между различными системами и приложениями, например, между фронтендом и бэкендом.