REST глагол для постановки и удаления - PullRequest
0 голосов
/ 15 мая 2018

Я реализую REST'ish API, который оборачивает очередь. Мне нужно ставить предметы в очередь и снимать с них. Обычно я использую GET для запроса, но в этом случае удаление чего-либо изменит состояние, удалив элемент. Так что GET кажется плохим выбором.

Существует ли стандарт или рекомендация для этого варианта использования? Я думал о PUT и POST, но я не уверен, что должно быть.

Я мог бы использовать DELETE для Dequeue и PUT для Enqueue. На самом деле, кажется, это имеет смысл.

Я реализую это в ASP.NET Core, если это имеет значение.

1 Ответ

0 голосов
/ 15 мая 2018

PUT для постановки в очередь имеет смысл, так как вы добавляете элемент в коллекцию. GET и DELETE в контексте REST-y требуют, чтобы вы указали, о каком элементе вы говорите, или работали со всей коллекцией, ни одна из которых не работает для удаления из очереди.

Одним из распространенных решений для пользовательских действий является POST до /collection/<action_name>, поэтому в вашем случае вы можете указать, что вы POST до /collection/enqueue и /collection/dequeue выполняете свою работу.

В качестве альтернативы, HTTP-глаголы - это просто текст, и вы можете сами придумывать, так что вы можете выбрать ENQUEUE и DEQUEUE - /collection.

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