Когда вы общаетесь с программистами, вы, возможно, слышали об API и о том, как их можно использовать для выполнения определенных задач или получения некоторых данных. Но что это такое и для чего они были созданы?
Позвольте мне объяснить проблему на простом примере, не связанном с ИТ. Когда вы идете в ресторан и заказываете еду, вы взаимодействуете с официантом. Вы можете заказать еду и напитки, задать вопросы по меню, запросить и оплатить счет и многое другое. В этом примере официант ограждает вас от всех сложных вещей, которые происходят за кулисами. Вам не нужно беспокоиться о плитах, духовках, посуде, управлении запасами или разливе напитков. Он является связующим звеном между вами и всеми услугами, которые предлагает ресторан. Предоставляя вам возможность взаимодействовать с рестораном, при этом защищая вас от всех сложностей за кулисами. В некотором смысле официанта можно рассматривать как API ресторана.
Термин API расшифровывается как Программируемый интерфейс приложений и позволяет различным программам работать вместе.
Вот некоторые из причин, по которым стоит использовать API:
- Его можно использовать для получения доступа к данным третьих лиц. В примере с рестораном официант может предоставить вам информацию о статусе вашего заказа без необходимости идти на кухню самостоятельно. Другим примером может быть погодное приложение, которое использует сторонний API для получения прогнозов погоды. Apple, например, использует API The Weather Channel.
- API позволяют различным приложениям и службам обмениваться информацией. В наши дни трудно найти сервис, у которого нет API. Существуют API для поиска рецептов, текстов песен, информации о штрих-кодах, почтовых индексах, доступных парковочных местах, праздничных днях и так далее.
- API также можно использовать для сокрытия сложности и выполнения задач. В примере с рестораном вам не нужно знать, как приготовить идеальный ролл суши, вы просто заказываете один. Другим примером могут быть операционные системы на наших компьютерах и телефонах. Разработчикам приложений не нужно беспокоиться о настройке соединения WiFi, рисовании фигур на экране для создания красивого пользовательского интерфейса или о том, как взаимодействовать с различными датчиками, такими как акселерометр или GPS.
- API также можно использовать для расширения функциональности. Например, в iOS приложения могут отображать виджет в Центре уведомлений. И для этого приложение уведомляет систему через API о том, что у него есть доступный виджет. И если пользователь добавит его в свой Центр уведомлений, система свяжется с приложением, чтобы спросить, как оно должно отображать виджет.
Что делает API?
Несмотря на то, что они являются основополагающими для многих технических операций, язык и синтаксис API весьма ограничены. Существует четыре типа действий, которые может выполнять API:
- GET: запрашивает данные с сервера.
- POST: отправляет изменения с клиента на сервер; думайте о запросе POST как о добавлении информации на сервер, например о создании новой записи.
- PUT: пересматривает или дополняет существующую информацию.
- УДАЛИТЬ: удаляет существующую информацию.
Когда вы комбинируете конечные точки с этими действиями, также называемыми глаголами HTTP, вы можете искать или обновлять любую доступную информацию через API.
Как использовать API?
Самый простой способ начать использовать API — найти HTTP-клиент в Интернете, например REST-Client, Postman или Paw. Эти готовые к использованию инструменты помогут структурировать запросы на доступ к существующим API. Следующий лучший способ получить данные из API — создать URL-адрес из существующей документации.
В видео на YouTube ниже объясняется, как получить данные о местоположении из Google Maps через API, а затем использовать эти координаты для поиска ближайших фотографий в Instagram.
В целом запрос API не сильно отличается от обычного URL-адреса браузера, но возвращаемые данные будут в форме, удобной для чтения компьютерами. Вот что произошло, когда я запросил информацию из базы данных OpenWeather в своем веб-браузере:
Пример URL из документации — запрос погоды для определенного города:
api.openweathermap.org/data/2.5/weather?q={название города}
Введите в браузере:
api.openweathermap.org/data/2.5/weather?q=Nashville,TN&APIID={numberslettersnumbersletters}
Обязательно замените «numberslettersnumbersletters» своим ключом API, иначе вы получите код состояния 401, говорящий о том, что ваш ключ API недействителен. Без действительного ключа ваша аутентификация завершится неудачно.
Не для всех API потребуется ключ. Многие общедоступные API, например те, что включены в этот список, этого не делают.
Надеюсь, это помогло вам начать свое путешествие по API. Любой комментарий, обратная связь высоко ценятся для улучшения этого контента ❤