Какой простой шаблон REST URL является более распространенным / лучшим? - PullRequest
0 голосов
/ 09 декабря 2011
/controller/action/id

или

/controller/id/action

Что чаще встречается?Что предпочтительнее и почему?

Есть ли "за" / "против" использования одного или другого?


Редактировать:

Или, возможно, думать об этом вопросе иначе, почемупо умолчанию в большинстве сред MVC (ASP.Net MVC, Grails, Spring MVC) используется шаблон URL /controller/action/id?Есть ли какое-то преимущество в этом?

Ответы [ 3 ]

2 голосов
/ 16 ноября 2012

Ни один из них не является RESTful. В URL не должно быть глаголов / действий. Они ограничены методом HTTP по уважительной причине (чтобы клиенты могли взаимодействовать с вашим сервисом, не зная ничего об этом).

Если вы не можете ничего сделать, кроме GET и POST, используйте POST, чтобы отправить параметр action на /controller/id

0 голосов
/ 09 декабря 2011

Я определенно предпочитаю /controller/action/id. Для меня это больше похоже на определение ресурса (существительное), а не на действие над этим существительным (глагол).

В дополнение к точному URL-адресу ресурса, вы должны учитывать, как вы отображаете HTTP-глаголы. По моему опыту, мы перетасовали URL, основываясь на том, что имело смысл в сочетании с глаголами. Тем не менее, у нас также есть пара мест, где мы нарушили канонический подход для удобства (например, предоставив определенное действие удаления с помощью GET, чтобы пользователи могли выполнять действие через браузер).

Также посмотрите это обсуждение для получения дополнительной информации. REST URL структуры совета

0 голосов
/ 09 декабря 2011

Asp.Net MVC использует /controller/action/id.Это то, что вы чаще всего видите в этой среде.Я не вижу никаких технических преимуществ, но простое использование общей схемы может облегчить понимание.

...