204 無內容

HTTP 的 204 No Content 成功響應 狀態碼錶示請求已成功,但客戶端不需要離開當前頁面。204 響應預設可快取,並且在這種情況下會包含 ETag 標頭。

針對這些請求方法的 204 No Content 響應具有以下含義和結果

  • DELETE:操作成功,無需提供更多資訊。
  • PUT:操作成功,並且 ETag 值包含目標資源新表示的實體標記。

在為維基網站等應用程式實現“儲存並繼續編輯”功能時,可以使用 204 響應。在這種情況下,可以使用 PUT 請求儲存頁面內容,而 204 No Content 響應指示瀏覽器不應將編輯器替換為其他內容。

狀態

http
204 No Content

示例

刪除影像後接收響應

在此示例中,客戶端使用 DELETE 方法傳送請求以刪除影像。該請求包含一個帶有令牌的 Authorization 標頭以對請求進行身份驗證。

http
DELETE /image/123 HTTP/1.1
Host: example.com
Authorization: Bearer 1234abcd

成功刪除影像後,伺服器將返回一個不帶正文的 204 響應(以及明確的 Content-Length: 0 標頭),表示無需將更多資訊傳送到客戶端。

http
HTTP/1.1 204 No Content
Date: Wed, 26 Jun 2024 12:00:00 GMT
Server: Apache/2.4.1 (Unix)
Content-Length: 0

規範

規範
HTTP 語義
# status.204

相容性說明

儘管此狀態碼旨在用於沒有正文的響應,但伺服器可能會錯誤地在標頭之後包含資料。此問題在持久連線中可見,其中無效正文可能包含對後續請求的單獨響應。HTTP 協議允許瀏覽器以不同的方式處理此類響應(關於 HTTPWG http-core GitHub 儲存庫 中的規範文字正在進行討論)。

Apple Safari 會拒絕任何此類資料。Google Chrome 和 Microsoft Edge 會丟棄在有效響應之前最多四個無效位元組。Firefox 容忍在有效響應之前超過 1 KB 的無效資料。

另請參閱