Что такое REST API?

«Что такое REST API?» — вопрос из категории API тестирование, который задают на 38% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

REST (Representational State Transfer) — это архитектурный стиль для проектирования сетевых API, который использует стандарты и протоколы HTTP.

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

  1. Единообразие интерфейса (Uniform Interface):
    • Ресурсы идентифицируются URL (например, /api/users/123).
    • Действия над ресурсами определяются HTTP-методами (GET, POST, PUT, DELETE).
    • Сервер возвращает представление ресурса (часто в JSON или XML).
  2. Отсутствие состояния (Stateless): Каждый запрос от клиента должен содержать всю информацию, необходимую серверу для его обработки. Сервер не хранит состояние сессии клиента.
  3. Кэшируемость (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, легко интегрируется и хорошо подходит для веб-сервисов и мобильных бэкендов.