Как стать автором
Обновить

Глава 1. Введение в API-интерфейсы для самых маленьких

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров16K
Автор оригинала: Брайан Кукси (Brian Cooksey), Zapier, перевел и дополнил данными Максим Филипп

Введение в API-интерфейсы

Об этой книге

Автор курса Брайн Кукси, совместно с редакторами Брайаном Ландерсом и Дэнни Шрайбером, при участии Брайса Эмли. В своем произведении знакомит читателей с темой «Введения в API-интерфейсы». Объясняя сложное простым языком. Обновление оригинала от января 2024 года. Книга и мини-курс от Брайана Кукси
(Brian Cooksey), Zapier.

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

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

Для кого предназначен этот курс?

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

Структура мини-курса Мини-курс API-интерфейсы для самых маленьких.

  1. Введение в API

  2. Протоколы API

  3. Типы и форматы API

  4. Проверка подлинности API, часть 1: Основные и ключевые

  5. Проверка подлинности API, часть 2: OAuth

  6. Проектирование API

  7. Взаимодействие с API в режиме реального времени

  8. Реализация API

Об авторах

Первоначально руководство по «Введению в API-интерфейсы» был опубликовано в апреле 2014 года, на сайте https://zapier.com/resources/guides/apis последнее обновление было внесено Брайном Кукси в январе 2024 года.

Оригинальное издание: «An introduction to APIs» Written by Brian Cooksey. Edited by Bryan Landers, Danny Schreiber and Maxim Philipp, with contributions from Bryce Emley. Все права на оригинал принадлежат указанным автора и компании Zapier.

Книга «Введение в API-интерфейсы» Автор - Брайан Кукси. Под редакцией Брайана Ландерса, Дэнни Шрайбера, и Максима Филиппа при участии Брайса Эмли.

Источник: (Кукси, 2024) https://zapier.com/resources/guides/apis

Книга «Введение в API-интерфейсы» Автор - Брайан Кукси, изд. 2024г


Глава 1: Введение в API

API (интерфейсы прикладного программирования) — это важная часть Интернета, которая становится только больше. В 2021 исследовании  F5 прогнозируют, что число активных API вырастет с менее чем 200 миллионов в 2018 году до более чем 1,7 миллиарда к 2030 году. Между тем, согласно последнему отчету о состоянии API, в 2022 году почти 63% разработчиков полагались на API больше, чем в предыдущем году, и почти 70% заявили, что ожидают, что в 2023 году они будут полагаться на них еще больше. Что касается руководителей, то более половины руководителей, опрошенных в рамках последнего отчета Postman о состоянии API, ожидают увеличения инвестиций своих организаций в API в следующем году.


Структура главы 1

  1. Что такое АПИ?

  2. Какие бывают виды API

  3. Серверы

  4. Как работают API-интерфейсы?

  5. Как используется API

  6. Краткое изложение главы 1. Введение в API

  7. Следующая глава


Что такое АПИ?

API (Application Programming Interface) — это набор правил (интерфейс) и протоколов, которым соглашаются следовать две отдельные системы или программы — одна на стороне публикации, а другая на стороне доступа, позволяющих приложениям взаимодействовать друг с другом

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


Какие бывают виды API

Основные виды API можно разделить на 4 группы:

  1. По назначению

  2. По архитектуре (протоколу)

  3. По уровню доступа

  4. По формату данных


Основные виды API:

1. По уровню доступа

  • Публичные (Open API) – доступны для всех разработчиков (например, API Google Maps, Twitter, YouTube).

  • Партнерские (Partner API) – доступны только для авторизованных партнеров (например, API платежных систем для интеграции с банками).

  • Внутренние (Private API) – используются внутри компании для связи между сервисами (например, микросервисная архитектура).

2. По архитектуре (протоколу)

  • REST (RESTful API) – использует HTTP-запросы (GET, POST, PUT, DELETE), данные обычно в JSON/XML.

  • SOAP API – строгий стандарт с XML, поддерживает WS-* спецификации (безопасность, транзакции).

  • GraphQL API – позволяет клиенту запрашивать только нужные данные (гибкость, меньше перегрузки).

  • gRPC – высокопроизводительный API от Google, использует Protocol Buffers (бинарный формат).

  • WebSocket API – двусторонняя связь в реальном времени (чаты, онлайн-игры).

3. По назначению

  • Web API (HTTP API) – используют интернет-протоколы (HTTP/HTTPS) для обмена данными между клиентом и сервером.при взаимодействие с веб-сервисами (например, API социальных сетей).

  • Операционные системы API – позволяют программам взаимодействовать с ОС и её ресурсами (WinAPI, POSIX).

  • Библиотеки и фреймворки – встроенные интерфейсы API в языках программирования для работы с готовыми функциями (например, Java API, Python requests).

  • Аппаратные API – обеспечивают доступ к железу и периферийным устройствам, для управления устройствами (драйверы, IoT).

4. По формату данных

  • JSON API – популярный формат для REST.

  • XML API – используется в SOAP и некоторых REST API.

  • Binary API – например, gRPC, Protobuf.

Выбор API зависит от задачи:

  • REST – простота, веб-приложения.

  • GraphQL – гибкость запросов.

  • SOAP – безопасность и надежность (банки, корпоративные системы).

  • gRPC – высокая производительность (микросервисы, облачные сервисы).


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


Серверы

Когда речь заходит об API, большая часть разговоров сосредоточена на абстрактных понятиях. Чтобы закрепить наши взгляды, давайте начнем с чего-то физического: сервера. Сервер — это нечто иное, как большой компьютер. В нем есть все те же компоненты, что и в ноутбуке или настольном компьютере, которые вы используете для работы; он просто быстрее и мощнее. Как правило, серверы не оснащены монитором, клавиатурой или мышью, что на первый взгляд делает их неприступными. Но реальность такова, что ИТ—специалисты подключаются к ним удаленно - например, при помощи удаленного рабочего стола — для работы с ними.

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

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

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


Как работают API-интерфейсы?

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

Веб-сайты созданы с учетом сильных сторон людей. Люди обладают невероятной способностью воспринимать визуальную информацию, сочетать ее с нашим опытом, чтобы извлечь смысл, а затем действовать в соответствии с этим смыслом. Вот почему вы можете посмотреть на форму на веб-сайте и узнать, что маленькое окошко с надписью "Имя" над ней означает, что вы должны ввести слово, которое вы используете для идентификации себя.

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

Решением является API.

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

Пример упрощенной работы API
Пример упрощенной работы API

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


Как используется API

Когда две системы (веб-сайты, настольные компьютеры, смартфоны) соединяются через API, мы говорим, что они "интегрированы" "integrated.". При интеграции у вас есть две стороны, каждая из которых имеет специальное название. Об одной стороне мы уже говорили: "сервер" «server». Это та сторона, которая фактически предоставляет API. Полезно помнить, что API — это просто другая программа, запущенная на сервере. Это может быть часть той же программы, которая обрабатывает веб-трафик, или совершенно отдельная программа. В любом случае, он сидит и ждет, когда другие запросят у него данные.

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

Тот же принцип применим к интегрированным веб-сайтам. Когда один сайт получает данные с другого, сайт, предоставляющий данные, выступает в качестве сервера, а сайт, получающий данные, выступает в качестве клиента.


Краткое изложение главы 1. Введение в API

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

Ключевыми терминами, которые мы изучили, были:

  • Сервер «Server»: мощный компьютер, на котором работает API

  • API: "Скрытая" часть веб-сайта, предназначенная для использования компьютером

  • Клиент «Client»: Программа, которая обменивается данными с сервером через API


Следующая

В следующей главе мы рассмотрим механизм взаимодействия клиента с API.

Следующая глава:

Глава 2. Протоколы API

Теги:
Хабы:
Всего голосов 16: ↑15 и ↓1+16
Комментарии2

Публикации

Работа

Ближайшие события