1631

UPDATE( PUT) とDELETE(例: 製品は正常に更新されました)にはどのステータス コードを設定すればよいですか?

4

10 に答える 10

2473

PUTリクエストの場合: HTTP 200HTTP 204は「リソースが正常に更新された」ことを意味する必要があります。PUT要求が新しいリソースを作成した場合はHTTP 201 。

DELETEリクエストの場合: HTTP 200またはHTTP 204は、「リソースが正常に削除された」ことを意味する必要があります。

HTTP 202は、どちらの操作でも返される可能性があり、命令がサーバーによって受け入れられたが、まだ完全には適用されていないことを意味します。後で操作が失敗する可能性があるため、クライアントは操作が成功したと完全に想定すべきではありません。

認識できないステータス コードを受け取ったが、2 で始まっているクライアントは、それを 200 OK として扱う必要があります。

置く

既存のリソースが変更された場合、リクエストが正常に完了したことを示すために、200 (OK) または 204 (コンテンツなし) の応答コードを送信する必要があります。

消去

成功応答は、応答にステータスを説明するエンティティが含まれている場合は 200 (OK)、アクションがまだ実行されていない場合は 202 (承認済み)、アクションが実行されているが応答に含まれていない場合は 204 (コンテンツなし) である必要があります。エンティティ。

出典: W3.org: HTTP/1.1 メソッド定義

HTTP 200 OK: HTTP 要求が成功した場合の標準応答。実際の応答は、使用するリクエスト メソッドによって異なります。

HTTP 204 No Content:サーバーはリクエストを正常に処理しましたが、コンテンツを返しません

ソース: HTTP ステータス コードのリスト: 2xx 成功

于 2010-02-26T15:18:16.380 に答える
953

簡単な回答: PUT と DELETE の両方で、200 (OK) または 204 (No Content) を送信する必要があります。

長い回答: これが完全な意思決定図です (クリックして拡大)。

HTTP 1.1 デシジョン ダイアグラム

ソース: https://github.com/for-GET/http-decision-diagram

于 2010-02-26T15:23:54.730 に答える
16

RFC 2616には、使用するステータス コードが記載されています。

いいえ、常に 200とは限りません。

于 2010-02-26T15:20:54.763 に答える
10

200と204に加えて、205(コンテンツのリセット)が有効な応答である可能性があります。

サーバーはリクエストを実行し、ユーザーエージェントはリクエストが送信される原因となったドキュメントビューをリセットする必要があります...[例]入力が与えられたフォームのクリア。

于 2013-01-08T21:15:47.343 に答える