私は REST API 開発に不慣れで、すべての操作をサポートしたくない場合に何をすべきかについてのガイダンスを見つけることができませんでした。
たとえば、読み取り専用 API を作成したいとします。「書き込み」動詞 (PUT、POST、DELETE など) のいずれかを受け取った場合はどうすればよいでしょうか? これには規則がありますか (404 や 500 などを返すなど)?
私は REST API 開発に不慣れで、すべての操作をサポートしたくない場合に何をすべきかについてのガイダンスを見つけることができませんでした。
たとえば、読み取り専用 API を作成したいとします。「書き込み」動詞 (PUT、POST、DELETE など) のいずれかを受け取った場合はどうすればよいでしょうか? これには規則がありますか (404 や 500 などを返すなど)?
RFC 2616で定義されている規則では、サポートしていないコマンドに対して 501 (実装されていません) 応答を返します。
405 は、リソースでサポートされていないメソッド用です。501 は、サーバーがメソッドを認識しない場合です。許可されていないことを要求したのはクライアントであるため、エラーは 5xx ではなく 4xx であると思います。クライアントはこれを修正できます。サーバーに問題はありません。単にそのメソッドを実装しないことを選択しただけです。