Как правильно смоделировать многоисточниковую / целевую операцию для REST API? - PullRequest
0 голосов
/ 28 ноября 2018

Допустим, я хочу назначить / отменить назначение нескольких пользователей нескольким группам за одну операцию.Я хочу, чтобы это был действительный REST (т. Е. Манипулирование ресурсами через CRUD), а не RPC (выполнить операцию, даже если это то, что я действительно делаю).

Назначить одного пользователя в одну группу легко:

  • POST или DELETE / groups / 1 / users / 1

Но для нескольких пользователей для нескольких групп становится неясно (для меня).Являются ли какие-либо из них действительными?

  1. POST или DELETE / groups / 1,2,3,4 / assignments / 1,4,5
  2. POST или DELETE / groups / 1,2,3,4 (тело имеет массив идентификаторов пользователей)
  3. POST или DELETE / groups? Id = 1 & id = 2 & id = 3 & id = 4 (тело имеет массив идентификаторов пользователей)

Есть ли другие варианты?Первый из приведенных выше «чувствует» себя правильно, потому что он может красиво отражать GET:

  • GET / groups / 1,2,3,4

Я знаю, что неткажется стандартным способом сделать это.Кроме того, имеет ли значение, если я использую запятую или точку с запятой в качестве разделителя идентификаторов?

...