web-dev-qa-db-ja.com

応答本体はHTTP-DELETE-リクエストに対して許可されていますか?

応答コード200は常に応答本体を許可すると想定していますが、DELETE要求の応答本体の明示的な言及は見つかりません。

75
scrrr

ここで明示的に言及されている [〜#〜] rfc [〜#〜]

短い答えは:

含める必要がある2を返す場合、削除されたアイテム/リソースを説明するエンティティを含む応答本文。

202は、非同期の要求/応答戻りステータスのようなものです。

204は、応答本文を含めないことを明示的に示しています

127
fyr

はい、通常 W3C仕様 に従って200応答コードで応答する必要があります。

9.7削除

DELETEメソッドは、Request-URIで識別されるリソースをOriginサーバーが削除することを要求します。このメソッドは、Originサーバーでの人間の介入(または他の手段)によってオーバーライドされる場合があります。 Originサーバーから返されたステータスコードがアクションが正常に完了したことを示していても、クライアントは操作が実行されたことを保証できません。ただし、サーバーは、応答が与えられた時点でリソースを削除するか、アクセスできない場所に移動しない限り、成功を示すべきではありません。

成功した応答は、応答にステータスを記述するエンティティが含まれる場合は200(OK)、アクションがまだ実行されていない場合は202(Accepted)、アクションが実行されているが応答に含まれていない場合は204(No Content)エンティティ。

要求がキャッシュを通過し、Request-URIが現在キャッシュされている1つ以上のエンティティを識別する場合、それらのエントリは古いものとして扱われるべきです(SHOULD)。このメソッドへの応答はキャッシュできません。

15
Brian Scott