Невозможно поговорить с разработчиком, если он не упомянет слово API хотя бы 50 раз. В этом посте я хочу изучить, что такое определение API и какие типы API бывают.
Определение
Связь - это потрясающая вещь. Как разные приложения и устройства подключаются друг к другу? Это интерфейс прикладного программирования.
API-интерфейсы создают связь между приложениями и устройствами.
Большинство компьютерных программ предоставляют данные для людей в форме пользовательского интерфейса, чтобы их использование было максимально приятным. Все операционные системы предоставляют графический интерфейс пользователя (графический интерфейс пользователя) для взаимодействия с системой. Пользователя на самом деле не волнуют технические детали. Аналогичным образом API предоставляет разработчикам более простой способ взаимодействия с другими видами программного обеспечения. Данные должны использоваться другой программой, а не «пользователем».
API - это мессенджер, который принимает запросы, сообщает системе, что делать, и возвращает ответ. Например, вы можете получить доступ к базе данных другой компании. API имеет интерфейс и может запрашивать информацию о других системах. Можно сказать, что API - это посредник для связи между различными программами.
Уровень API помогает стандартизировать процесс кодирования. В Интернете это может быть API на основе JavaScript, это абстракция базового процесса.
Аналогия настенной розетки
Программируемая сеть опубликовала большую серию статей; что такое API и как они работают? У них есть отличная небольшая аналогия, на которую я хочу сослаться;
Вы можете думать об API в контексте розетки. Электроэнергия - это услуга, а устройство - ее потребитель. Потребитель в этом случае передает свои требования к мощности поставщику услуги. Электрические розетки имеют предсказуемую структуру. Вилка стандартная, и мощность, которую она выдает (вольт), стабильна и в основном одинакового значения. Точно так же API определяет, как программные компоненты должны взаимодействовать друг с другом.
Представьте, как бы вы получили электроэнергию без такого стандарта.
Выгоды
API-интерфейсы могут не только помочь разработчикам писать более качественные программы, но и помочь сообществу вокруг программы в целом благодаря инфраструктуре API;
- Если API является общедоступным, каждый может подключиться к нему и начать работу над проектами.
- Остальные программы можно легко перенести, данные остались прежними.
- Он добавляет уровень абстракции к базовой службе.
- API делают разработчиков более продуктивными (им не нужно начинать с нуля)
В Интернете это означает, что вы можете передать функции браузеру на аутсорсинг и добавлять данные из других служб. Браузеры предлагают стандартный способ доступа к веб-приложениям, например камерам, аудио и Bluetooth. То же самое для таких сервисов / приложений, как Slack или Twitter. Вы можете использовать Slack API в реальном времени для отправки сообщений без интерфейса Slack с помощью всего нескольких строк кода.
Типы API
Вы можете запросить конкретную информацию, позвонив endpoints
с конкретным parameters
. Вы в основном запрашиваете у службы подмножества большой базы данных. Нет никаких правил того, как разработчики должны подключать свои собственные приложения к API, но появилось несколько стандартов.
Прежде всего необходимо различать, является ли API общедоступным или частным.
- Если API является полностью общедоступным, вы можете запрашивать данные без какой-либо дополнительной информации.
- Если API является общедоступным, вы можете запрашивать данные с
public key
предоставляемым службой. Добавляя ключ при отправке запроса, вы можете выполнять вызовы API. Имейте в виду, что с открытым ключом у большинства API будут ограничения. - Если API является частным, вам понадобится ключ, как указано выше, но ключ не является общедоступным. Служба должна лично предоставить вам ключ.
Аутентификация:
Если вы хотите управлять данными от определенного пользователя (пользователь должен войти в систему), большинство API-интерфейсов используют открытый протокол OAuth.
Открытый протокол, обеспечивающий безопасную авторизацию простым и стандартным способом из веб-приложений, мобильных и настольных приложений.
Это позволяет вам взаимодействовать с защищенными данными из определенных данных пользователя. Например; добавлять плейлисты в конкретную учетную запись Spotify без использования интерфейса Spotify.
Rest API:
Большинство интерфейсов в Интернете устанавливают соединения с помощью HTTP protocol
. Вы можете запросить данные, используя конечную точку API, адресуемую через Интернет по протоколу HTTP. (GET, PUT, POST & DELETE) Вы можете сделать запрос к определенной конечной точке, и поскольку HTTP-запрос всегда является двусторонним, вы получаете ответ для использования в вашем собственном приложении. В Интернете чаще всего этот ответ имеет формат .json
.
RTM API:
Некоторые службы используют несколько иной подход и вместо HTTP protocol
они используют API на основе WebSocket, который позволяет получать события в реальном времени. Вместо того, чтобы запрашивать информацию, API может передать информацию вам.
Вы можете добиться подобного результата с помощью Res API с помощью опроса. (Просто очень часто вызывайте конечную точку). Опрос - это то же самое, что и кнопка обновления. Это работает, но это не лучшее решение.
WEB API
Чтобы быть ясным; большая часть этой публикации посвящена API от других сервисов для запроса данных. Существуют также специальные веб-API. Они используются для управления DOM и могут быть доступны с помощью JavaScript с типами объектов. Веб-API расширяют функциональность веб-браузера и, таким образом, зависят от браузера.
- Стандартные API JavaScript. Это те же основные API-интерфейсы JavaScript и DOM, которые вы можете использовать в стандартных веб-приложениях.
- Возможности HTML и другие появляющиеся API, зависящие от браузера.
Надеюсь, этот пост проясняет некоторые концепции, связанные с API-интерфейсами, почему вы должны их использовать и почему они крутые⚡️ в целом!
Спасибо за прочтение! Не стесняйтесь обращаться ко мне, если вам есть что сказать!