Должны ли остальные службы использовать только 4 метода http?

63
4

Я изучаю REST и знаю об этом.

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

Я установил плагин postman и обнаружил, что есть и другие методы: COPY, LINK, UNLINK, PURGE. Ссылка: https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?hl=ru

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

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

спросил(а) 2021-01-25T16:34:53+03:00 5 месяцев назад
1
Решение
77

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

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

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

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

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

ответил(а) 2021-01-25T16:34:53+03:00 5 месяцев назад
45

a) не смотрите на RFC 2616. Это устарело.


b) список зарегистрированных методов HTTP находится здесь: http://www.iana.org/assignments/http-methods/http-methods.xhtml (с указателями на спецификации)

ответил(а) 2021-01-25T16:34:53+03:00 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема