Немного о 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-канале.