2014-11-13 8 views
1

Я изучаю REST и имею некоторые знания об этом.Должны ли остальные службы использовать только 4 метода http?

Я знаю, что существует более 4 методов http: PUT, GET, POST, DELETE, HEAD, OPTIONS, CONNECT. Ref: http://www.w3schools.com/tags/ref_httpmethods.asp

Я установил плагин почтальона и обнаружил, существуют и другие методы тоже, как: COPY, LINK, UNLINK, ПРОДУВКА. Ref: https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?hl=en

Если это тоже http-методы, может кто-то, пожалуйста, дать ссылку на ссылку, чтобы просмотреть документацию?

Входящий в мой вопрос: Должны ли быть созданы веб-сервисы RESTful, используя только PUT, GET, POST и DELETE, так как многие веб-сайты в Интернете объясняют REST, используя только эти 4 HTTP-метода?

+0

У меня нет никаких забот с негативными комментариями. Но будет очень признателен за любое объяснение этого. – anand

ответ

2

Короткий ответ: нет. Но, во-первых, примите во внимание совет Джулиана Решке: RFC 2616 мертв. Посмотрите на эти статьи:

Конечно, вы можете использовать другие методы. Например, существует метод PATCH, и вы должны использовать его для частичных обновлений. Согласно RFC5789, метод PUT не должен делать частичные обновления.

Метод PUT уже определен, чтобы перезаписать ресурс с полным новым телом и не может быть повторно использован для частичных изменений. (http://www.ietf.org/rfc/rfc5789.txt).

Это зависит от семантики метода и если эти семантики применяются к вашей службе REST. Еще один пример: предположим, что клиент вашего RESTful Service хочет запросить метаданные, связанные с ресурсом, а не его представление (сами данные). Как вы можете это сделать? В этом случае вы можете использовать метод HEAD для представления только метаданных, связанных с этим ресурсом (например, его полей/атрибутов).

Обновление ответа, чтобы включить ссылку на RFC 7231. Следуйте этой ссылке, если вы хотите узнать больше о методах HTTP и их семантике.

+0

спасибо Марлону, это очень информативно. – anand