April 3, 2019

Немного о REST Web API


!!НАШ БЛОГ ПЕРЕЕХАЛ!!

Мы создали свой сайт! Все материалы, опубликованные в этом блоге, переехали туда.

Наш новый сайт maddevelop.ru


API (англ. application programming interface - "программный интерфейс приложения") - описание способов (набор классов, процедур, функций, структур или констант), которыми одна компьютерная программа может взаимодействовать с другой программой. API определяет функциональность, которую предоставляет программа (модуль, библиотека). При этом API позволяет абстрагироваться от того, как именно эта функциональность реализована. Если программный интерфейс приложения написан для веб-сервера или веб-браузера, то мы имеем дело с Web API.

Веб-служба, веб-сервис - идентифицируемая уникальным веб-адресом программная система со стандартизованными интерфейсами. Веб-службы могут взаимодействовать друг с другом и со сторонним приложениями посредством сообщений, основанных на определённых протоколах или соглашениях (REST). Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения. Использование подобного построения обеспечивает комбинирование и многократное использование компонентов для создания сложных распределённых программных комплексов, обеспечивая независимость от используемых платформ и инструментов разработки, способствуя масштабируемости и управляемости создаваемых систем.

REST (англ. representational state transfer - "передача состояния представления") - это стиль архитектуры программного обеспечения для распределённых систем, таких как World Wide Web, который часто используется для построения веб-служб. В сети Интернет вызов удалённой процедуры может представлять собой обычный HTTP-запрос (обычно «GET» или «POST»; такой запрос называют «REST-запрос»), а необходимые данные передаются в качестве параметров запроса. Для веб-служб, построенных с учётом REST (то есть не нарушающих накладываемых им ограничений), применяют термин «RESTful».

В отличие от веб-сервисов на основе SOAP, не существует «официального» стандарта для RESTful веб-API. Дело в том, что REST является архитектурным стилем, в то время как SOAP является протоколом. Несмотря на то, что REST не является стандартом сам по себе, большинство RESTful-реализаций используют стандарты, такие как HTTP, URL, JSON и XML.

Требования (здесь подробнее) к архитектуре REST:

  • модель клиент-сервер;
  • отсутствие состояния;
  • кэширование;
  • единообразие интерфейса;
  • слои;
  • код по требованию.

P.S. Информация почти целиком взята из Википедии, данная заметка создана для понимания REST Web API без перехода по нескольким ссылкам.


Ещё больше интересной информации на нашем Telegram-канале.