HTTP API
Теория: О курсе
Обычно под термином API подразумевают способ, с помощью которого программы или сервисы могут запрашивать данные у других сервисов. В этом уроке мы начнем знакомство с API и на примере разберем, как он работает.
У GitHub есть сайт, на котором мы можем просматривать организации, репозитории и код проектов. Кликая по ссылкам, мы попадаем на разные адреса, по которым доступна разная информация: список репозиториев, страница конкретного репозитория, профиль пользователя, просмотр истории коммитов и так далее. Вот примеры таких ссылок:
- https://github.com/hexlet-components — страница конкретной организации
- https://github.com/hexlet-components/java-spring-blog — страница конкретного репозитория
Каждая из этих страниц возвращает HTML. Информация представлена так, как мы ее видим — то есть со всеми элементами дизайна. Сайт GitHub адаптирован под небольшие экраны и открывается с любого устройства, где есть браузер.
Но у GitHub есть еще и мобильное приложение, которое показывает ту же самую информацию, но с более удобным интерфейсом, адаптированным под конкретный телефон. В отличие от сайта, мобильное приложение физически хранится и запускается прямо на телефоне, его внешний вид описывается внутри приложения.
Для работы такого приложения нужны чистые данные, которых на телефоне нет, они есть на серверах GitHub. Как загрузить их с сервера на телефон? Обычные адреса страниц нам не подходят, так как они возвращают не данные, а готовые html-страницы.
Именно здесь на помощь приходит API. GitHub предоставляет специальные HTTP-адреса, по которым доступны чистые данные, а не конкретные интернет-страницы с готовым внешним видом.
Данные по таким адресам отдаются в структурированном формате — чаще всего это формат JSON.
Один сервис упаковывает данные в JSON-формат, а другой принимает данные, распаковывает их из JSON-файла и использует внутри себя для отображения. Так может выглядеть запрос организации:
Задача этого API — дать удобный доступ к данным GitHub. Причем этот API GitHub используется не только самим GitHub в мобильных приложениях. Его же используют и в сторонних сервисах. Например, в сервисах для анализа и автоматической проверки качества кода, которые интегрируется с репозиториями GitHub для обнаружения потенциальных проблем в коде.
GitHub API — это пример HTTP API. Он работает по протоколу HTTP, через который браузеры загружают и показывают сайты.
HTTP — это самый распространенный и удобный способ делать API для публичных интернет сервисов. Под него заточен весь интернет, он поддерживается в любом языке программирования. Это простой протокол — с ним знакомы все, кто связан с разработкой мобильных и веб-приложений.
В этом курсе мы поговорим, что из себя представляет HTTP API, каким оно бывает и как работает. Мы научимся делать запросы к API для его анализа и тестирования, используя программу curl и сервис Postman. Также мы познакомимся со стандартом OpenAPI, который используется для описания формата API.
.png)














