RESTful маршрут для списка членов, которых нет в коллекции - PullRequest
2 голосов
/ 18 сентября 2009

Я пытаюсь выяснить, как лучше всего показать список участников (пользователей), которые не являются коллекцией (группой).

/users 

- мой маршрут для перечисления всех пользователей в учетной записи

/group/:id/members 

- мой маршрут для перечисления всех пользователей в группе

/users?not_in_group=:id 

- это моя текущая опция для отображения списка пользователей НЕ в группе. Есть ли более RESTFul способ показать это?

/group/:id/non_members 

кажется странным ...

Ответы [ 3 ]

2 голосов
/ 18 сентября 2009

Для получения нужного представления можно использовать либо параметры запроса, либо пути. Но я бы последовал совету Пита и убедился, что ваш API управляется гипертекстом . В противном случае возникает связь между клиентом и сервером, которую REST должен был предотвратить.

Лучший ответ на ваш вопрос может зависеть от вашего заявления. Например, если ваша система достаточно мала, может быть достаточно поддерживать только представление, состоящее из списка пользователей и их соответствующих групп (ресурс находится в / users). Затем позвольте клиенту разобраться, что он хочет делать с информацией. Если в вашей системе много групп и много пользователей, каждая из которых принадлежит только нескольким группам, ваше представление available_users для любой группы в любом случае, вероятно, будет лишь немного меньше, чем весь список пользователей.

Креативный дизайн типов медиа может иметь большое значение для решения подобных проблем.

0 голосов
/ 18 сентября 2009

Основная заповедь REST - «гипертекст как движок состояния приложения». Форма URI не имеет значения, важно то, что он является навигационным по представлению, возвращенному в точке входа приложения.

0 голосов
/ 18 сентября 2009

говорил с моим партнером. Он предложил:

/group/:id/available_members

Кажется, гораздо более позитивным.

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