Заметки бизнес-аналитика
Главная › Системный анализ › Интеграции и REST API

25 вопросов и ответов по REST API на собеседовании системного аналитика

Конспект статьи. Автор оригинала: Сергей Березин (SSP SOFT)

Подборка вопросов по теории REST API. Обычно на собеседовании сначала 2–3 вопроса по терминологии и HTTP, затем практическое задание на составление запроса.

Термины

REST — архитектурный стиль на основе HTTP; REST API — API по его правилам; RESTful API — конкретная реализация. Принципы: разделение клиента и сервера, единый интерфейс, отсутствие состояния, многоуровневость, кешируемость, code on demand. Ресурс — объект с уникальным URI. CRUD: POST, GET, PUT, DELETE (плюс PATCH для частичного изменения).

Методы и коды

POST не идемпотентен, PUT идемпотентен.

  • 200 OK, 201 Created, 202 Accepted.
  • 301, 302, 307, 308 — перенаправления.
  • 400 Bad Request, 401 Unauthorized (не аутентифицирован), 403 Forbidden (нет прав), 404 Not Found.
  • 500, 502 Bad Gateway, 503 Service Unavailable.

Сравнения

  • GraphQL — клиент сам выбирает поля ответа.
  • SOAP — строгий протокол на XML; REST проще и поддерживает кеширование.
  • AJAX — приёмы обновления части страницы в браузере; может использовать REST, но не обязан.

Contract first и code first

Contract first — сначала спецификация, потом код: меньше недопонимания. Code first — сначала код, спецификация генерируется. Подходы можно сочетать.

Источник: 25 вопросов и ответов по REST API на собеседовании системного аналитика
Автор: Сергей Березин (SSP SOFT)
Это конспект, пересказ основных идей. Полный текст, иллюстрации и примеры читайте в оригинальной статье.