PUT
応答本文に何も返さない (null) RESTful 操作について、人々がどのような意見を持っているのか知りたいです。
ベストアンサー1
HTTP仕様(RFC 2616) には適用可能な推奨事項がいくつかあります。私の解釈は次のとおりです。
200 OK
既存のリソースへの更新のPUTが成功した場合のHTTPステータスコード。レスポンス本文は必要ありません。(セクション9.6、204 No Content
の方がさらに適切です。- 新しいリソースの PUT が成功した場合のHTTP ステータス コード
201 Created
。新しいリソースの最も具体的な URI が Location ヘッダー フィールドに返され、リソースのその他の関連 URI とメタデータが応答本文にエコーされます。(RFC 2616 セクション 10.2.2) - サード
409 Conflict
パーティによる変更により失敗した PUT のHTTP ステータス コード。応答本文には、試行された更新と現在のリソースの相違点のリストが含まれます。(RFC 2616 セクション 10.4.10) - 失敗した PUT のHTTP ステータス コード
400 Bad Request
。応答本文には、PUT が失敗した理由を説明する自然言語テキスト (英語など) が含まれます。RFC 2616 セクション 10.4)
注: この回答が書かれた時点では RFC 2616 が最新の仕様でしたが、その後 RFC は置き換えられました。 標準を参照する場合は、最新の標準を使用していることを確認すると便利です。