Содержание:
2. Взаимодействие с API удаленного сервера
3. Виды API
Большинство людей ежедневно пользуются различными онлайн-сервисами и даже не подозревают, что постоянно косвенно взаимодействуют с каким-либо API. Каждый раз, когда вы запускаете, например, приложение с погодой на компьютере или телефоне, вы используете API.
Не все могут объяснить, что такое API, а некоторые вообще не подозревают о его существовании и не знают благодаря чему выполняется взаимодействие с сервисами.
Давайте разберемся что такое API и почему его использование важно, как для пользователей, так и для разработчиков программного обеспечения.
1. Что такое Application Programming Interface
API (от англ. Application Programming Interface — программный интерфейс приложения) — описание способов, с помощью которых одна компьютерная программа может взаимодействовать с другой. Это набор инструментов в виде какого-либо интерфейса для создания новых приложений.
При этом все взаимодействия выполняются с помощью функций, классов, методов, структур, а иногда и констант одной программы, к которым могут обращаться другие.
Почему удобно использовать API:
1. С точки зрения разработчика: за сравнительно небольшое количество времени можно расширить функциональность своего продукта, связать его с другими продуктами.
2. Бизнес получает экономию денег: не нужно разрабатывать все решения с нуля.
3. Пользователи в свою очередь получают более удобные и функциональные приложения с огромным количеством сервисов, собранных в одном месте. И получают их быстрее, чем если бы разработчики каждый раз создавали все заново.
Для лучшего понимания рассмотрим аналогию с домашними электросетями. Когда вы хотите воспользоваться какой-либо бытовой техникой, вы просто подключаете прибор к розетке, и он начинает работать. Вам не нужно пытаться подключить провода напрямую к источнику тока. И вовсе не обязательно знать, как все устроено внутри розетки.
2. Взаимодействие с API удаленного сервера
Когда пользователь посещает любую страницу сети, он невольно взаимодействует с API удаленного сервера.
Если рассмотреть этот процесс очень упрощенно, то выглядеть он будет так: Браузер стучится на сайт и просит отдать страницу с определенным адресом ->
серверное API получает этот запрос -> ищет нужный файл с содержимым страницы ->
отдает обратно браузеру, который обрисовывает эту страницу на экране монитора.
Каждый API отвечает на вопрос “Как ко мне, к моей системе можно обратиться?”. Ответ можно разделить на три части:
- Саму выполняемую операцию;
- Входные данные;
- Выходные данные (контент данных или сообщение об ошибке).
Данное описание очень похоже на описание работы функции в программировании. По сути, API это и есть набор функций для разных задач. Нужно просто знать что умеет делать тот или иной API и какие функции для каких задач подходят.
Пройдемся по указанным выше трем пунктам на примере API OpenWeather – сервиса, который предоставляет данные о погоде по запросу.
1. Нужно знать какую операцию требуется выполнить.
В документации сказано, что данный API умеет отдавать данные о текущей погоде в конкретном месте по его координатам. Для примера возьмем Лондон.
2. На вход будем отдавать данные в виде координат: широта = 51.509865, долгота: -0.118092.
Сам запрос к API будет выглядеть так:
https://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&appid={API key}, где:
- вместо {lat} вставляем широту,
- вместо {lon} долготу,
- {API key} – это ключ, который выдается после регистрации, чтобы система понимала, что это именно вы делаете запрос.
3. После отправки запроса придет ответ с данными о погоде в формате JSON 1С, которые потом можно будет распарсить и получить из него необходимые данные:
{
"coord": {
"lon": -0.118092,
"lat": 51.509865
},
"main": {
"temp": 15.55,
"feels_like": 14.86,
"wind_speed": 1.5,
"temp_min": 13.37,
"temp_max": 16.26,
"pressure": 1023,
"humidity": 100
}
3. Виды API
API можно условно разделить на публичные – те, которые предназначены для совместного использования всеми пользователями интернета. Например, API для авторизации где-либо через соцсети.
И частные – это приложения, разработанные для определенного узкого круга лиц. Чаще всего они используются внутри компании и на отдельных предприятиях.
Несколько популярных API:
Есть много компаний, которые разрабатывают собственные API и продают их как готовый продукт. Рассмотрим некоторые из них:
1. OpenWeather
Предоставляет данные о погоде по всему миру. Их API умеет принимать на вход параметры в виде названия города или координат, а возвращает назад метеоданные, структурированные специальным образом – в виде JSON.
2. Aviasales (или другие агрегаторы авиабилетов)
Сервисы заказа авиабилетов собирают информацию об авиабилетах в разных компаниях и отображают ее в одном окне. Реализовать такое позволяют API, встроенный в сайты авиакомпаний, который в реальном времени отдают информацию о стоимости и наличии билетов по выбранному направлению.
3. API для авторизации на каком-либо портале через соцсети: Google, Apple, Twitter, VK и тд.
Компании Apple, Google и Яндекс разработали API, которые позволяет всем желающим получить у себя на сайте или в мобильном приложении собственный картографический сервис.
Специалист компании "Кодерлайн"
Марина Анапольская