認証/承認コンポーネントも持つAPIを開発しています。
認証ステータスに関係なく、誰でも書き込み (POST) ができますが、認証されていないか、通常のユーザーとして認証されているか、管理者として認証されているか、およびアクセスしようとしているリソースに応じて、異なる応答を返します。 GET、DELETE、および PUT 用。
認証または承認されていないユーザーに最も適切な応答コードを見つけようとしています。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.htmlに注意してください:
無許可 -> 401
禁止 -> 403
メソッドは許可されていません -> 405
具体例を使用してみましょう。
- John Doe は認証されていません。DELETE で 401 または 405 を受け取る必要がありますか?
- Amy は認証されていますが、承認されていません。DELETE で 403 または 405 を受け取る必要がありますか?
(John と Amy が禁止または許可されていなくても、別の HTTP 動詞で同じリソースにアクセスできないわけではないことに注意してください。)
ありがとう。