У кого-нибудь есть пример «Хорошо определенной» веб-службы REST? - PullRequest
3 голосов
/ 17 ноября 2009

Я читаю тонны постов, вопросов и ответов о дебатах REST vs SOAP. Я читал несколько сторонников REST, которые утверждают, что «хорошо спроектированные» веб-службы REST говорят сами за себя и вряд ли нуждаются в какой-либо документации.

Может кто-нибудь указать мне на такой веб-сервис? Желательно несколько сложный.

Ответы [ 3 ]

1 голос
/ 18 ноября 2009

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

Идея самодокументирующегося REST API заключается в том, что можно получить единую точку входа в систему и иметь возможность обнаружить все функциональные возможности, доступные через возвращенные документы, в сочетании с пониманием стандартного использования глаголов REST (GET, ПОСТАВИТЬ, УДАЛИТЬ). Таким образом, если вы извлекаете список сотрудников из системы RESTful, отдельные записи будут указывать URL-адрес этой записи, а поле работодателя будет указывать URL-адрес работодателя. Выполните поиск по HATEOAS для получения более подробной информации. Но вы можете позвонить «/ employee» и получить:

<employees>
  <employee id=132 name=bob url="/employee/132" employer="/employer/176"/>
  <employee id=179 name=carl url="/employee/132" employer="/employer/122"/>
</employees>

Вы можете просмотреть полную запись о сотруднике в / employee / 132 и просмотреть запись о своем работодателе в / Employer / 176. По договоренности, если у вас есть разрешение, вы можете обновить bob сотрудника, используя PUT для / employee / 132, или создать нового сотрудника с POST для / employee. Принятые типы контента также могут запрашиваться через интерфейс (я думаю, с использованием HEAD).

1 голос
/ 17 ноября 2009

Вот пример сложного API для сетевой видеокамеры ... Я рекомендую взглянуть на VAPIX HTTP 3.0 API. Это довольно просто, если вы знакомы с условиями. Конечно, это около 60 страниц, но большая часть из них просто шаблонная, чтобы познакомить читателя с использованием сетевого API.

Yahoo! Weather Feeds - это пример простого, удобного способа получения информации из службы.

Существуют также примеры API REST, которые по сути отправляют данные в формате XML туда и обратно. Хотя это технически ОТДЫХ, если вы пытаетесь определить API с использованием XML, я бы подумал об использовании веб-сервисов .

0 голосов
/ 24 ноября 2009

Проверьте Amazon S3.

...