Программный интерфейс приложения, сокращённо API — это контракт между двумя программами, который позволяет им обмениваться информацией.

Аналитики проектируют API и определяют:

  • протокол общения (HTTP, HTTPS)
  • формат запроса и ответа (JSON, XML, Protobuf)
  • способы аутентификации и авторизации

API определяет правила обмена информацией между программами, если эти правила не соблюдаются, обмен данными может быть нарушен.

Two cat astronauts signing an api agreement

Когда необходимо сориентироваться на местности, мы пользуемся приложением «Карты» (Google Maps, Yandex Maps). «Карты» предоставляют географическую информацию не только пользователям, но и другим приложениям при помощи API.

Приложение «Навигатор» выступит в роли клиента, а приложение «Карты» — сервера.

  1. «Навигатор» передает запрос с параметрами начальной и конечной точки маршрута
  2. Получает ответ от приложения «Карты»
  3. Дополняет карту навигационной информацией (предлагает оптимальный маршрут, предупреждает о загруженности дорог, отображает ближайшие заправки и т.д.)
  4. Карта отображается пользователю

plain-map

Карты

navigator-map

Навигатор

Выступите в роли клиента. Передайте серверу координаты для сохранения стартовой точки.

Заполните форму «Форма для отправки HTTP-запроса» и отправьте HTTP-запрос на сервер.


Форма для отправки HTTP-запроса

Договорённость по формату запроса:

  • URL адрес запрашиваемого ресурса: /startpoint (в данном случае используем только окончание адреса, т.н. эндпоинт)
  • HTTP метод, соответствующий отправке новых данных на сервер (см. HTTP методы)
  • Заголовок с типом контента application/json (указывает на то, что данные будут переданы в JSON формате)
  • Тело запроса должно содержать параметры latitude и longitude в JSON формате
Ключ Описание Тип Обязательность * Ограничения
latitude широта число + от -90 до 90
longitude долгота число + от -180 до 180

* Обязательность говорит об обязательности указания поля, может принимать значения:

  • При обязательности +, Y, Yes, Да, 1
  • При необязательности -, N, No, Нет, 0..1

ВВЕДЕНИЕ

БАЗОВЫЕ ЗНАНИЯ

УРОВНИ ТЕСТИРОВАНИЯ

UI ТЕСТИРОВАНИЕ

МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТОВАЯ ДОКУМЕНТАЦИЯ

АУТЕНТИФИКАЦИЯ И АВТОРИЗАЦИЯ

POSTMAN

БАЗЫ ДАННЫХ

АНАЛИЗ РАБОТЫ ПРИЛОЖЕНИЯ

ПОДГОТОВКА К СОБЕСЕДОВАНИЮ

Как составить резюме Топ вопросов