Действительно ли PUT URL должен указывать ресурс - PullRequest
2 голосов
/ 26 марта 2012

Чтение эта страница , там написано:

... URI в запросе PUT идентифицирует объект, заключенный в запросе - пользовательский агент знает, для чего предназначен URI, и сервер НЕ ДОЛЖЕН пытаться применить запрос к какому-либо другому ресурсу.

Исходя из этого, я понимаю, что мне не нужно показывать URL-адрес, который принимает запросы PUT, если URL-адрес не уникально идентифицирует ресурс. e.g.:

http://www.example.com/cars

Скорее, я должен разрешить запросы PUT на следующий URL:

http://www.example.com/cars/123

Однако в запросе PUT предполагается, что контент содержит всю сущность, которая, следовательно, может содержать некоторый вид первичного ключа (например, 123 в приведенном выше URL). Так действительно ли считается плохой практикой выставлять неуникальные URL-адреса для запросов PUT, когда контент будет содержать уникальный идентификатор? В моем сервисе все, что я хочу сделать, - это собирать данные от клиентов, поэтому сервис RESTful, принимающий запросы PUT, - это замечательно, но я не хочу, чтобы URL-адрес был уникальным (так как это требует больше работы для создания URL-адреса на сторона клиента).

Ответы [ 2 ]

3 голосов
/ 26 марта 2012

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

Если вы просто собираете данные от клиентов, то, скорее всего, вам следует вместо этого использовать POST.

0 голосов
/ 27 марта 2012

Именно поэтому в семантике REST PUT используется для обновлений и для создания любого ресурса, который предполагается использовать POST.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...