Удаление ресурсов из двух разных таблиц в одном запросе API RESTful - PullRequest
0 голосов
/ 24 октября 2019

В моем RESTful API мне нужно выполнить две операции:

  1. Удалить игрока

  2. Удалить игрока и его / ее игры

Хотя первая операция очевидна (запрос УДАЛИТЬ с URL / api / Players / playerId ), вторая операция заставила меня задуматься.

Вторая операция сложная. Вы можете удалить игрока и оставить игру в системе, но также есть возможность, чтобы игрок удалил все игры, в которых он был. Как бы странно это ни звучало, поверьте мне. Мне действительно любопытно, насколько хорошо разработанный API должен справляться с такой ситуацией.

Полезно ли иметь запрос DELETE с параметром bool "removeGames". Например:

DELETE /api/players/playerId?removeGames=1

1 Ответ

0 голосов
/ 25 октября 2019

Мне лично не нравится эта идея передачи bools для удаления других объектов домена. Я хотел бы сделать что-то вроде этого:

  1. УДАЛИТЬ в / api / Players / playerId
  2. УДАЛИТЬ в / api / Players / PlayerId / игры, если вы хотите удалить все из них
  3. УДАЛИТЬ в / api / Players / PlayerId / games / gameId для конкретной игры

Конечно, вам придется принять решение, что произойдет, когда вы удалите игрока, но сохраните игрыили вы пытаетесь удалить игру из уже удаленного игрока

...