Не каждый сайт имеет API. К примеру, гайды Хекслета содержат лишь набор статических HTML-страниц с текстом. То же самое можно сказать про многие другие сайты: визитки компаний, информационные сайты, каталоги.
В этом уроке мы узнаем, в каком случае появляется необходимость использовать HTTP API, а в каких — можно обойтись и без него.
Мобильные приложения
Большинство мобильных приложений — это всего лишь «окно» в серверную часть, то есть бэкенд. Так работают сервисы бронирования, переводов, карты, мессенджеры, социальные сети, приложения для бизнеса. Такие приложения редко работают без интернета и практически на каждое действие пользователя выполняют запросы к серверам, запрашивая или отправляя данные.
Фронтенд на JavaScript
Когда мы загружаем любой сайт в интернете, то возможны два варианта, по которым формируется внешний вид страницы в браузере.
Вариант 1. HTML-страницы формируются на сервере и отдаются в браузер напрямую. Любые ссылки обрабатываются напрямую браузером и загружаются прямыми запросами на сервер, которые обновляют страницу целиком.
В таком случае API не используется. Вся работа с данными и HTML происходит на сервере. Этот способ подходит там, где мало взаимодействия с пользователем и много страниц с текстом — как в Википедии или Google Поиске.
Вариант 2. Загруженная страница содержит JavaScript, который отслеживает и перехватывает клики по кнопкам и другие события. Страница в таком случае обновляется кодом, который загружен в браузер и выполняет запросы на сервер за нужными данными.
Такой способ нужен в местах с большим количеством форм или сложным взаимодействием, которое требует моментальной реакции. Таким способом реализованы системы бронирования, чаты, игры и редакторы.
Сервисы для сервисов
Большая область применения HTTP API скрыта от пользователей. Современные веб-сервисы взаимодействуют с множеством других систем, получают от них нужные данные или возможности. Все это происходит на сервере и не доходит до пользователя в браузер или мобильное приложение.
На практике никто не делает платежные системы самостоятельно. Разработчики всегда используют готовые системы, которые позволяют брать деньги с пользователей. Посмотрим на пример такой системы:
Выводы
Сама структура API не сильно зависит от того, для чего мы его используем. Вполне может быть такое, что одно и тоже API используется для разных задач — для сайта, мобильного приложения и других сервисов.
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.