Каково различие между HTTP и REST?

После чтения много о различиях между REST и SOAP, я получил впечатление, что REST является просто другим словом для HTTP. Кто-то может объяснить, какую функциональность REST добавляет к HTTP?

Примечание: Я не ищу сравнение REST по сравнению с SOAP.

Обновление: Спасибо за Ваши ответы. Теперь мне стало ясно, что REST является просто рядом правил о том, как использовать HTTP. Следовательно я отправил продолжение о том, каковы преимущества этих конвенций.

Примечание: Я теперь схватываю значение REST; как Emil Ivanov отмечает, REST означает использовать HTTP путем, он предназначен, чтобы быть. Однако я не уверен, заслуживает ли это собственного термина, и я, конечно, не получаю шумиху вокруг этого.

270
задан Community 23 May 2017 в 02:26
поделиться

5 ответов

No, REST is the way HTTP should be used.

Сегодня мы используем только малейшую часть методов протокола HTTP - а именно GET и POST. Способ REST заключается в использовании всех методов протокола.

Например, REST диктует использование DELETE для стирания документа (будь то файл, состояние и т.д.) за URI, в то время как при использовании HTTP вы бы использовали запрос GET или POST, как ...product/?delete_id=22.

202
ответ дан 23 November 2019 в 02:18
поделиться

REST не добавляет никаких конкретных функций к HTTP, но представляет собой архитектурный стиль, который был разработан вместе с HTTP и чаще всего использует HTTP для своего протокола прикладного уровня.

54
ответ дан 23 November 2019 в 02:18
поделиться

HTTP - это протокол приложения. REST - это набор правил, при соблюдении которых вы можете создать распределенное приложение, имеющее определенный набор желаемых ограничений.

Если вы ищете наиболее важные ограничения REST, которые отличают RESTful-приложение от любого HTTP-приложения, я бы сказал, что это ограничение «самоописание» и ограничение гипермедиа (также известное как Hypermedia как Engine of Application State (HATEOAS). )) самые важные.

Ограничение самоописания требует, чтобы запрос RESTful был полностью информативным с точки зрения пользователей. Это позволяет посредникам (прокси и кеши) безопасно работать с сообщением.

Ограничение HATEOAS заключается в превращении вашего приложения в сеть ссылок, где текущее состояние клиента зависит от его места в этой сети. Это сложная концепция, и для ее объяснения требуется больше времени, чем у меня сейчас.

28
ответ дан 23 November 2019 в 02:18
поделиться

Не совсем...

http://en.wikipedia.org/wiki/Representational_State_Transfer

REST был первоначально описан в контекст HTTP, но не ограничивается только этот протокол. Отдыхающие архитектуры может быть основано на другом приложении Слойные протоколы, если они уже обеспечить богатый и единообразный словарный запас для приложений на основе передачи значимого репрезентативного состояния. Отдыхающие приложения максимально используют ранее существовавшего, четко определённого интерфейс и другие встроенные возможности, предоставляемые выбранным сетевой протокол, и минимизировать добавление нового приложения особенности наверху.

http://www.looselycoupled.com/glossary/SOAP

(Простой протокол доступа к объектам). стандарт для сообщений веб-служб. На основе XML SOAP определяет конверт. формат и различные правила для описывая его содержание. Видел (с WSDL и UDDI) как один из трех базовые стандарты веб-сервисов, это предпочтительный протокол для обмен веб-сервисами, но ни в коем случае означает единственный; сторонники REST сказать, что это добавляет ненужного сложность.

14
ответ дан 23 November 2019 в 02:18
поделиться

REST - это особый подход к проектированию больших систем (например, Интернет).

Это набор «правил» (или «ограничений»).

HTTP - это протокол, который пытается подчиняться этим правилам.

7
ответ дан 23 November 2019 в 02:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: