Я разрабатываю API, который также будет иметь компонент аутентификации/авторизации.
Любой, независимо от статуса аутентификации, сможет писать (POST), но в зависимости от того, не авторизованы ли вы, как обычный пользователь или как администратор, и к какому ресурсу вы пытаетесь получить доступ, я собираюсь возвращать разные ответы для GET, DELETE и PUT.
Я пытаюсь найти наиболее подходящий код ответа для пользователя, который не прошел проверку подлинности и/или не авторизован.
Имейте в виду http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html:
Неавторизованный -> 401
Запрещенный -> 403
Метод Не разрешено -> 405
Давайте рассмотрим конкретные примеры:
(Имейте в виду, что даже несмотря на то, что Джон и Эми запрещены или авторизованы, это не означает, что они не могут получить доступ к одному и тому же ресурсу с помощью другой ГЛАГОЛ HTTP.)
Спасибо.