Что такое REST и его основные принципы?

Manual QA Middle API / Backend обновлено 11.10.2025

Краткий ответ

REST (Representational State Transfer) — это архитектурный стиль взаимодействия клиент–сервер, основанный на HTTP-протоколе.
Он используется для построения API, где клиент обращается к ресурсам (данным) с помощью стандартных методов: GET, POST, PUT, DELETE.

Пример:
GET /users/1 — получить пользователя с ID=1
POST /users — создать нового пользователя

Полный ответ

🔹 Определение

REST — это архитектурный стиль (не протокол!), определяющий, как клиент и сервер обмениваются данными.
REST-сервисы называются REST API, и они используют HTTP как основу для коммуникации.

Главная идея REST — представить всё как ресурсы, к которым можно обращаться по уникальным URL.

🔹 Основные принципы REST

1. Клиент–сервер (Client–Server)

  • Описание: Клиент (фронтенд) и сервер (бэкенд) разделены. Клиент отвечает за интерфейс, сервер — за данные.
  • Пример: Мобильное приложение делает запрос к серверу банка.

2. Отсутствие состояния (Stateless)

  • Описание: Каждый запрос независим — сервер не хранит состояние клиента. Все данные (токен, параметры) передаются в каждом запросе.
  • Пример: Каждый запрос API содержит токен авторизации.

3. Кэшируемость (Cacheable)

  • Описание: Ответы сервера можно кэшировать для ускорения работы.
  • Пример: Запрос GET /news может кэшироваться на 5 минут.

4. Единообразие интерфейса (Uniform Interface)

  • Описание: Все ресурсы доступны через одинаковые принципы — URL + HTTP-методы.
  • Пример: /users, /orders, /products — единая структура.

5. Многоуровневая система (Layered System)

  • Описание: Между клиентом и сервером могут быть прокси, балансировщики, кэши — клиент об этом не знает.
  • Пример: API Gateway перенаправляет запросы на разные микросервисы.

6. Представление ресурсов (Representation of Resources)

  • Описание: Ресурсы передаются в формате JSON, XML и др.
  • Пример: Сервер возвращает { "id": 1, "name": "Alex" }

🔹 Основные HTTP-методы в REST

Метод GET

  • Назначение: Получить данные
  • Пример: GET /users — список пользователей

Метод POST

  • Назначение: Создать ресурс
  • Пример: POST /users — добавить нового пользователя

Метод PUT

  • Назначение: Обновить ресурс полностью
  • Пример: PUT /users/1 — изменить данные пользователя

Метод PATCH

  • Назначение: Частично обновить
  • Пример: PATCH /users/1 — изменить только e-mail

Метод DELETE

  • Назначение: Удалить ресурс
  • Пример: DELETE /users/1 — удалить пользователя

🔹 Пример REST API на практике

Запрос:
GET https://api.shop.com/products/5

Ответ (JSON):
{
"id": 5,
"name": "iPhone 15",
"price": 1200,
"available": true
}

💡 Итог:
REST — это простой и понятный способ организации API, где всё строится вокруг ресурсов,
а взаимодействие происходит через стандартные HTTP-запросы (GET, POST, PUT, DELETE) по понятным URL.

Оцените ответ
0 / 5 · 0