Купить Корзина
Логотип REG.RU
  • Вход
  • Помощь
  • Выделенные серверы и ДЦ
  • Администрирование выделенных серверов
  • Что такое API

Что такое API

В статье мы расскажем:

  • что такое API,
  • что такое REST и SOAP,
  • какие типы ПО работают с API.

Что такое API сайта или приложения

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

API: что это такое и как он работает

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

Ниже мы расскажем, какими бывают стандарты написания API.

Что такое REST API

REST API — это регламент, по которому веб-приложения взаимодействуют с сервером. Название этой технологии состоит из двух компонентов:

  • REST (Representational State Transfer) — технология создания API на основе протокола HTTP.
  • API — код для взаимодействия приложений.

Иногда REST API называют RESTful.

Перед тем как начать пользоваться REST API, нужно проверить код по семи критериям:

  • Client-Server — отделение клиента от сервера. Клиент, который создает API-соединение, — это пользовательский интерфейс: например, поисковая строка или кнопка. В RESTful код запроса остаётся у клиента, а код для доступа к данным — на сервере. Благодаря этому легче организовать API, а также перенести пользовательский интерфейс на другую платформу.
  • Uniform Interface — единство интерфейса. Все данные должны запрашиваться с одного URL стандартными протоколами (чаще всего HTTP).
  • Cacheable — кэшируемость. В запросе к серверу должна содержаться информация о кэшировании данных в буфере (хранилище). Если указано, что данные должны кэшироваться, клиент может запрашивать данные из буфера.
  • Stateless — отсутствие записи состояния клиента. Сервер не должен хранить информацию о предыдущих действиях пользователя. В свою очередь клиент должен включать в запрос только те данные, которые нужны для получения ответа от сервера.
  • Starting with the Null Style — начало от нуля. Клиент должен иметь доступ только к одной точке входа. Дальнейшую обработку выполняет сервер.
  • Layered System — многоуровневость системы. Серверы могут располагаться на разных уровнях. Однако взаимодействие происходит только между соседними устройствами.
  • Code on Demand — предоставление кода по запросу. Сервер может отправлять код клиенту (например, скрипт для воспроизведения музыки).

Чаще всего передача данных по REST API работает на основе протокола HTTP. Он использует четыре HTTP-метода, которые позволяют инициировать подключение по API и взаимодействовать с объектами на сервере:

  • GET, чтобы получить список объектов,
  • DELETE, чтобы удалить данные,
  • POST, чтобы добавить или заменить данные,
  • PUT для регулярного обновления данных.

Второе название этих методов — идентификаторы CRUD. Это аббревиатура, образованная от четырёх действий: создать (create), прочитать (read), обновить (update) и удалить (delete).

Открытый доступ к API: что это такое

Что такое SOAP API

SOAP (Simple Object Access Protocol, или простой протокол доступа к объектам) — это протокол, по которому веб-приложения взаимодействуют между собой или с клиентом.

SOAP API — это веб-сервис для обмена сообщениями между клиентом и сервером по протоколу SOAP. Он может работать с протоколами SMTP, FTP, HTTP и HTTPS.

Сообщение SOAP состоит из следующих элементов:

  • Envelope (конверт) — определяет передаваемый документ как SOAP-сообщение. Это происходит благодаря пространству имён xmlns:soap=«http://www.w3.org/2003/05/soap-envelope/. Если на этапе определения будет указан другой адрес, сервер вернёт ошибку.
  • Header (заголовок) — здесь указаны атрибуты приложения (например, аутентификация). Заголовок может включать в себя три атрибута:

    • mustUnderstand — указывает, в каком порядке нужно обработать заголовок: обязательном (значение 1) или опциональном (значение 0);
    • actor — задаёт узел, на котором должен обрабатываться заголовок;
    • encodingStyle — устанавливает кодировку.
  • Body (тело) — само сообщение. Оно хранит в себе запрос или ответ от сервера.
  • Fault (ошибка) — входит в состав сообщения, только если возникла ошибка при обработке. Состоит из четырёх полей:

    • faultcode — кода ошибки,
    • faultstring — описания проблемы,
    • faultactor — данных о компоненте программы, который вызвал ошибку,
    • detail — дополнительных сведений.

Интеграция по API: что это и зачем она нужна

Чем отличается REST от SOAP

SOAP — это протокол, который имеет официальные правила. Он представляет собой расширение XML-RPC — стандарта удалённого доступа к приложению. XML-RPC использует XML для кодировки запроса и HTTP для транспортировки.

REST — это набор ограничений. При написании кода разработчик может учитывать эти ограничения, однако это не помешает гибкой настройке инфраструктуры. Это связано с тем, что RESTful не имеет официального стандарта.

Если SOAP — это чёткий регламент с разрешениями и ограничениями, то REST состоит только из ограничений.

Какие приложения могут работать с API

API включает в себя:

  • действие, которое можно выполнить,
  • входные данные,
  • выходные данные.

API могут работать с разными типами программ: операционными системами, графическими и звуковыми интерфейсами, а также аутентификационными системами.

Для операционных систем популярны модули:

  • Cocoa,
  • Linux Kernel API,
  • OS/2 API,
  • Windows API.

Для графических и звуковых интерфейсов часто используются:

  • DirectDraw/Direct3D и DirectMusic/DirectSound — части DirectX,
  • SFML,
  • OpenVG,
  • SDL,
  • Vulkan,
  • Mantle,
  • OpenAL.

Аутентификационные системы используют BioAPI и PAM.

Для чего нужен Web API

Web API — это тип программного интерфейса, который используется только в веб-программировании. Веб API содержит набор запросов HTTP и определяет структуру HTTP-ответа. Имеет схожий функционал с веб-службами. Однако есть отличия:

  • веб-службы работают со стандартами XML, WSDL, UDDI и JSON;
  • Web API как правило выражает ответ от сервера в форматах XML или JSON.
Помогла ли вам статья?
ДаНет
раз уже помогла

Спасибо за оценку!
Как мы можем улучшить статью?

Нужна помощь?
Напишите в службу поддержки!

Рассылка REG.RU

Лайфхаки, скидки и новости об IT

Подписываясь, вы принимаете правила рассылок

Услуги
  • Стоимость услуг
  • Хостинг
  • Зарегистрировать домен
  • Создание сайтов
  • REG.Site
  • VPS
  • Серверы и ДЦ
  • SSL-сертификат
Помощь
  • База знаний
  • Шаблоны заявлений
  • Оставить отзыв, предложение
  • Сообщить о нарушении
Партнерам
  • Партнерские программы
  • Профессионалам IT
  • Бонусная программа
  • REG.API
  • Промоматериалы
Полезное
  • Акции и скидки
  • Мероприятия
  • Юридические услуги
  • Юридическим лицам
  • ЭДО
  • Whois
REG.RU
  • О компании
  • Контакты и офисы
  • Новости
  • Отзывы клиентов
+7 495 580-11-11

Телефон в Москве

8 800 555-34-78

Бесплатный звонок по России

  • vk
  • telegram
  • ok
  • moikrug
  • youtube
  • twitter

Нашли опечатку?
Выделите и нажмите
Ctrl+Enter

  • mir
  • sbp
  • sberbank
  • qiwi
  • yamoney
  • visa
  • mastercard
Все способы оплаты Все способы оплаты
  • REG.RU
  • © ООО «Регистратор доменных имен РЕГ.РУ»

    Правовая информация и правила пользования

  • shop.reg.ru Магазин доменов
  • statonline.ru Доменная статистика
  • reg.ru/blog Мы пишем
  • Мы используем файлы cookie. Продолжив работу с сайтом, вы соглашаетесь с Политикой обработки персональных данных и Правилами пользования сайтом.