Какой код состояния HTTP более подходит для возврата из метода PEST / PATCH API REST, когда ресурс находится в состоянии, когда он не может быть обновлен? - PullRequest
0 голосов
/ 08 ноября 2019

Предположим, что у вас есть ресурс в «завершенном» состоянии, и его обновление (полное или частичное) никем не разрешено. Какой будет правильный код состояния HTTP для возврата в случае, если кто-то попытается обновить его? 400, 403, 409 или что-то еще?

1 Ответ

0 голосов
/ 08 ноября 2019

405 Метод не разрешен - интересная возможность

Код состояния 405 (метод не разрешен) указывает, что метод, полученный в строке запроса, известен источникусервер, но не поддерживается целевым ресурсом. Исходный сервер ДОЛЖЕН сгенерировать поле заголовка Allow в ответе 405. В нем содержится список поддерживаемых в настоящее время методов целевого ресурса.

«Поддерживаемые в настоящее время методы» подразумевают, что набор разрешенных методов для ресурса может развиватьсячерез некоторое время. Поэтому я бы сказал, что этот код подходит для ресурсов, которые находятся в состоянии, когда PUT / PATCH не поддерживаются.

403 Запрещено также является удовлетворительным вариантом.

Код состояния 403 (запрещено) указывает, что сервер понял запрос, но отказывается его авторизовать.

...