Узнайте, что такое API и зачем нужны API

API или интерфейс прикладного программирования обеспечивает связь между приложениями.

API - это не сервер. Вместо этого для доступа к нему используется промежуточное программное обеспечение.

Когда вы смотрите погоду со своего смартфона или настольного компьютера, браузер общается с API под капотом. Вот иллюстрация API:

Когда вы слышите слово API, оно обычно относится к веб-API. В этом отношении данная статья не является исключением.

Как работает API

API определяет набор правил того, как приложения могут взаимодействовать друг с другом. API - это посредник между приложением и веб-сервером. Он отвечает за пересылку запросов от приложения на сервер и наоборот.

Вот как работают запросы API:

  1. Браузер выполняет вызов API для получения данных с веб-сервера. Например, это могут быть данные о погоде.
  2. API перед сервером улавливает запрос, обращается к серверу и запрашивает данные.
  3. Сервер отправляет ответ API, содержащий запрошенные данные.
  4. API пересылает данные ответа обратно браузеру, который их запросил.

Реальная аналогия API

Официант ресторана - прекрасная аналогия API из реальной жизни. Они посредники между столами и кухней. Они передают заказы со стола на кухню и приносят еду с кухни на стол.

Когда вы открываете погодное приложение, ваше устройство сообщает API, что хочет знать погоду. API пересылает этот запрос на сервер, который подготавливает данные. Когда пакет данных готов, API берет его с сервера и отправляет вам.

Какую проблему решают API

API-интерфейсы позволяют приложениям легко взаимодействовать друг с другом.

Если вы разработчик, API-интерфейсы сэкономят вам много времени.

Например, вы хотите создать погодное приложение, но у вас нет метеостанции или программного обеспечения для прогнозирования погоды. Так что вам придется полагаться на сторонние данные.

Чтобы получить данные, вы можете отправить в стороннюю службу погоды по электронной почте таблицу прогнозов погоды. Но прогнозы быстро устаревают. Так что вам нужно будет обмениваться десятками электронных писем, чтобы оставаться в курсе.

Не было бы лучше, если бы у вашего приложения был способ, например, автоматически запрашивать данные о погоде каждые 15 минут?

Это именно то, что позволяют вам делать API.

Короче говоря, API-интерфейсы позволяют приложениям или программам взаимодействовать друг с другом.

Общие типы API

Существуют разные типы API. Вот список из четырех наиболее распространенных API:

  • Открытые API или общедоступные API общедоступны для всех. Обычно они требуют регистрации и использования ключа API.
  • Партнерские API - это API, доступные только бизнес-партнерам. В отличие от общедоступных API, существует процесс подключения к партнерскому API.
  • Внутренние API или частные API доступны только внутренним системам организации. Они используются различными внутренними командами разработчиков для повышения производительности и повторного использования существующих сервисов.
  • Составные API-интерфейсы объединяют несколько запросов API из разных API-интерфейсов. Вместо того, чтобы выполнять отдельные запросы к разным конечным точкам API, клиент может сделать один обширный запрос API.

Как компании получают выгоду от API

Есть много веских причин, по которым бизнес может захотеть использовать API.

Монетизация данных

Если компания хранит ценные данные, такие как данные о погоде, она может решить сделать их общедоступными. Это означает, что компания устанавливает API, к которому может получить доступ любой разработчик. Обычно этот API в некоторой степени бесплатен, но для более широкого использования требуется платный премиум-план.

Это беспроигрышная ситуация для общества и бизнеса. Разработчикам предоставляется доступ к ценным данным, которые иначе получить невозможно. И бизнес может монетизировать свои данные и получить доступ к информации.

Автоматизировать корпоративные рабочие процессы

Сегодня в среднем на предприятии используется около 1200 облачных приложений. Большинство этих приложений не разговаривают друг с другом.

API обеспечивает интеграцию между отключенными приложениями. Таким образом компании могут автоматизировать трудоемкие рабочие процессы и улучшить совместную работу.

Инновации

API-интерфейсы также предлагают способ связи с новыми деловыми партнерами. Они позволяют получить доступ к новым рынкам и создают новые возможности.

Хорошим примером использования API является Stripe. Stripe предлагает систему обработки платежей для вашего сайта через API. Эта система поддерживает список общепринятых типов оплаты.

Это работает так: когда клиент совершает покупку на вашем сайте, в Stripe отправляется вызов API, который затем позаботится обо всем остальном.

Дополнительный уровень безопасности

API также обеспечивает безопасный способ связи между серверами и устройствами.

При использовании API данные вашего устройства не передаются серверу, и наоборот. Связь происходит небольшими пакетами данных, передавая только то, что необходимо.

Например, API обработки платежей безопасен, поскольку ему не требуется доступ к вашему банковскому счету.

Общие API, которые вы видели

Вы наверняка использовали разные типы API сотни раз, даже не осознавая этого.

Вот несколько распространенных вариантов использования.

Зарегистрируйтесь в Google

Сколько раз вы видели похожую страницу регистрации?

Эта функция аутентификации позволяет веб-сайту использовать API популярной службы для аутентификации нового пользователя. Это экономит время и избавляет от лишних хлопот по настройке нового профиля.

Под капотом веб-сайт делегирует процесс регистрации третьей стороне через вызов API.

Сравнение бронирования путешествий

Сайты бронирования путешествий сравнивают тысячи рейсов, показывая посетителю самые дешевые варианты.

Это стало возможным благодаря API.

Программа бронирования путешествий:

  • Отправляет вызовы API на разные туристические сайты для получения информации о ценах на авиабилеты.
  • Затем он сравнивает результаты и показывает пользователям самые дешевые варианты.

Обработка сторонних платежей

Например, опция «Оплатить через PayPal» - обычная функция на сайтах электронной коммерции. Это также работает через API.

Когда пользователь что-то покупает с помощью этой опции, выполняется API-вызов PayPal. После этого PayPal позаботится обо всем остальном.

API с технической точки зрения

Теперь вы понимаете основы API на высоком уровне.

Далее вы собираетесь взглянуть на API с технической точки зрения. В этом разделе вы узнаете, как использовать API на конкретном примере.

Эта часть включает в себя написание небольшого количества кода HTML и JavaScript. Если вы не вникаете в технические подробности, можете пропустить эту часть.

Что такое вызов API

Вызов API, или, более формально, запрос API - это HTTP-запрос к конечной точке API. Эта конечная точка API - не что иное, как URL-адрес API.

Другими словами, вы можете выполнить запрос API в своем браузере, просто введя URL-адрес API и нажав клавишу ВВОД.

Что такое конечная точка API

Конечная точка API - это базовый URL-адрес, используемый для связи с API.

Например, API погоды может иметь конечные точки для данных о молниях, атмосферном давлении и температуре.

Структура URL-адреса API может выглядеть так:

https://example.com/weather/lightning

Конечная точка - это точка соприкосновения между API и сервером. Это место, куда ваша программа отправляет запрос на получение определенных данных.

API обычно имеет несколько конечных точек.

Ответ API - что происходит после вызова API

Когда вы сделали вызов API, API интерпретирует его и пересылает на веб-сервер. Затем веб-сервер подготавливает пакет данных в соответствии с вашими потребностями и отправляет его обратно в API. Затем API пересылает его вам.

Этот ответ не выглядит красивой веб-страницей. Вместо этого это объект, который обычно имеет формат JSON, XML или CSV. Ваше приложение должно обрабатывать эти данные и преобразовывать их в удобочитаемое представление.

JSON в двух словах

JSON или JavaScript Object Notation - это текстовый формат данных.

JSON - это самый распространенный формат данных, используемый с API. Это мощный инструмент, потому что он поддерживается большинством языков программирования.

Объект JSON выглядит так:

Он содержит данные в виде пар "ключ-значение", разделенных запятыми. Например "title": "example glossary".

Когда вы выполняете запрос API, вы обычно получаете ответ в формате JSON. Чтобы использовать данные, вам необходимо извлечь значения из объекта JSON в вашей программе. Это называется анализом JSON.

Как использовать API в двух словах

Теперь вы изучили все основы API. Пора научиться пользоваться одним.

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

  1. Найдите API в Google.
  2. Получите ключ API. Обычно вам нужно зарегистрироваться, чтобы получить его. Держите этот ключ в секрете. Большинство API-интерфейсов предлагают бесплатный план для базового использования и премиум-планы для опытных пользователей, например для дополнительных вызовов API.
  3. Изучите документацию, предоставленную API. Обычно они содержат примеры того, как начать работу с вызовами API и интеграциями.
  4. Сделайте свой первый запрос API. Не забудьте изучить ответ.
  5. Интегрируйте API в свой проект. Это этап, связанный с конкретным проектом. Если вы не знаете, как интегрировать API в свой проект, в Интернете есть отличные руководства.

Затем давайте применим эти пять шагов к конкретному примеру использования API.

Как использовать API - пример проекта

Этот пример предназначен для демонстрации шагов использования API путем демонстрации простого реального проекта.

Например, представьте, что ваш клиент попросил вас создать веб-страницу, которая показывает текущую погоду в Лондоне следующим образом:

Чтобы добиться этого, вам явно нужно полагаться на сторонние данные о погоде. Другими словами, вы собираетесь использовать API.

К счастью, теперь вы знаете пять общих шагов по использованию API.

Давайте начнем:

1. Найдите API

Напишите в Google «Free Weather API» и нажмите на поиск.

Первым результатом поиска является веб-сайт OpenWeatherMap. В нем говорится, что у него есть бесплатный API, который можно сразу же зарегистрировать и начать использовать. Давайте придерживаться этого API.

2. Получите ключ API.

Для вызова API вам понадобится ключ API. Ключ API - это уникальный идентификатор клиента, без которого невозможно выполнять вызовы API.

Чтобы найти ключ API, выберем сервис. Вас интересует текущая погода, поэтому выберите вариант «Текущие данные о погоде».

Чтобы получить бесплатный ключ API, выберите план Бесплатно, нажав Получить ключ API:

Чтобы получить доступ к ключу API, зарегистрируйтесь на странице.

После того, как вы зарегистрируетесь и подтвердите свою учетную запись, вы получите электронное письмо с вашим ключом API.

3. Изучите документацию по API и руководства по API.

Теперь у вас все готово для выполнения вызовов API. Но на данный момент у вас нет возможности узнать, как его создать.

Здесь помогает документация по API. В этом случае вы хотите узнать, как выполнить запрос API, чтобы получить данные о погоде в определенном месте.

OpenWeatherMap предоставляет вам эту информацию. Он показывает вам, как запросить погоду в месте, создав URL-адрес конечной точки API:

Имея эту информацию, вы можете форматировать URL-адреса API и выполнять свой первый вызов API.

4. Сделайте свой первый вызов API

Давайте напишем вызов API для запроса погоды в Лондоне, Великобритания. Чтобы сделать запрос, следуйте инструкциям OpenWeatherMap:

  • Скопируйте и вставьте следующий URL-адрес в адресную строку вашего браузера:
api.openweathermap.org/data/2.5/weather?q=London,uk&APPID=API_KEY
  • Замените API_KEY своим собственным ключом API.
  • Нажмите Enter.

Теперь вы выполнили свой первый успешный запрос API. В результате браузер открывает страницу, которая выглядит так:

Это ответ API. Он в формате JSON и содержит данные о погоде в Лондоне. Если вы присмотритесь, то увидите, что в нем есть информация о погоде, например temp и pressure.

Следующим шагом будет преобразование этих загадочных данных в удобочитаемую веб-страницу.

5. Интегрируйте API в свой проект

Наконец, вы можете создать HTML-страницу, которая показывает погоду. Конечным результатом этого шага будет то, что хотел клиент - веб-страница с погодой в Лондоне:

На предыдущем шаге вы вручную сделали запрос API с помощью браузера. В ответ вы получили данные о погоде в формате JSON.

Однако на вашей веб-странице вы хотите, чтобы запрос API выполнялся автоматически при открытии страницы. Кроме того, вы хотите, чтобы ответ выглядел удобочитаемым, показывая значок погоды вместо отображения мусора JSON.

Давайте подробнее рассмотрим предыдущий ответ JSON.

Вы можете увидеть поле icon, которое, вероятно, представляет текущую погоду в Лондоне в виде значка. Это может быть полезно.

Но ждать. Это не изображение. Там написано "icon":"04d".

Что тогда с этим делать? Обратимся к документации API, чтобы разобраться.

В документации говорится, что вы можете получить значки погоды с этого URL http://openweathermap.org/img/wn/, добавив icon + .png в конце URL.

Давайте возьмем значок "04d" из JSON и добавим его в конец URL-адреса, чтобы проверить, ведет ли он к значку погоды:

http://openweathermap.org/img/wn/04d.png

Если вы выполните поиск по этому URL-адресу, вы обнаружите страницу с этим крошечным значком:

Оно работает. Это значок погоды, который вы хотите показать покупателю на веб-странице.

Но теперь вы сделали это вручную. Следующее, что вам нужно сделать, это автоматизировать этот процесс. Другими словами, вам нужна веб-страница, которая:

  1. Выполняет вызов API.
  2. Выбирает тип значка из объекта ответа.
  3. Создает URL-адрес значка погоды.
  4. Вставьте значок за URL-адресом на свою веб-страницу.

Сделать это:

  • Создайте файл с именем weather.html.
  • Скопируйте и вставьте в него следующий базовый шаблон HTML-страницы:

Если вы сейчас откроете weather.html файл в браузере, вы увидите страницу с надписью Weather in London. Но информации о погоде нет, потому что HTML-код еще не выполняет вызовы API.

Для выполнения запроса API в HTML-документе воспользуемся библиотекой JavaScript fetch. Добавьте следующий фрагмент кода под строкой кода 15 и замените YOUR_API_KEY_HERE своим личным ключом API.

Короче говоря, этот код выполняет вызов API и выбирает icon из ответа. Затем он создает URL-адрес значка, в котором он получает значок для отображения на веб-странице.

Если вы сейчас откроете weather.html в своем браузере, вы, наконец, сможете увидеть погоду в Лондоне:

На этом пример проекта завершен.

Вывод

API или интерфейс прикладного программирования - это промежуточное программное обеспечение, которое определяет правила взаимодействия двух приложений.

Когда вы смотрите погоду со своего смартфона или настольного компьютера, браузер общается с API под капотом.

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

Чтобы использовать API, вам необходимо получить ключ API и ознакомиться с документацией по API.

Спасибо за чтение. Я надеюсь, вам понравится это!

Дальнейшее чтение