Учебники

Веб-сервисы RESTful — Ресурсы

Архитектура REST рассматривает каждый контент как ресурс. Этими ресурсами могут быть текстовые файлы, HTML-страницы, изображения, видео или динамические бизнес-данные. Сервер REST просто предоставляет доступ к ресурсам, а клиент REST осуществляет доступ и изменяет ресурсы. Здесь каждый ресурс идентифицируется URI / Global ID. REST использует различные представления для представления ресурса, где Text, JSON, XML. Самые популярные представления ресурсов — это XML и JSON.

Представление ресурсов

Ресурс в REST является похожим объектом в объектно-ориентированном программировании или похож на сущность в базе данных. Как только ресурс идентифицирован, его представление должно быть решено с использованием стандартного формата, чтобы сервер мог отправлять ресурс в вышеупомянутом формате, и клиент мог понимать тот же формат.

Например, в главе RESTful Web Services — первое приложение пользователь — это ресурс, который представлен в следующем формате XML:

<user> 
   <id>1</id> 
   <name>Mahesh</name>
   <profession>Teacher</profession> 
</user> 

Этот же ресурс может быть представлен в формате JSON следующим образом:

{ 
   "id":1, 
   "name":"Mahesh", 
   "profession":"Teacher" 
}

Хорошее Представление Ресурсов

REST не накладывает никаких ограничений на формат представления ресурса. Клиент может запросить представление JSON, тогда как другой клиент может запросить представление XML того же ресурса на сервере и так далее. Сервер REST отвечает за передачу клиенту ресурса в формате, понятном клиенту.

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

  • Понятность — и Сервер, и Клиент должны уметь понимать и использовать формат представления ресурса.

  • Полнота — Формат должен уметь полностью представлять ресурс. Например, ресурс может содержать другой ресурс. Формат должен уметь представлять как простые, так и сложные структуры ресурсов.

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

Понятность — и Сервер, и Клиент должны уметь понимать и использовать формат представления ресурса.

Полнота — Формат должен уметь полностью представлять ресурс. Например, ресурс может содержать другой ресурс. Формат должен уметь представлять как простые, так и сложные структуры ресурсов.

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

Однако в настоящее время большинство веб-служб представляют ресурсы в формате XML или JSON. Существует множество библиотек и инструментов, доступных для понимания, анализа и изменения данных XML и JSON.