204 No Content: 表示无内容返回的HTTP状态代码

スポンサーリンク
スポンサーリンク

关于204 No Content

204 No Content的概述

表示无内容成功响应的HTTP状态码

204 No Content

概述 204 No Content状态码表示请求已成功处理,但响应体中没有内容需要返回。当客户端请求的响应无需包含额外数据时,可以使用该状态码。

含义 客户端的请求已成功处理,但响应体中没有返回任何内容。

204 No Content在什么情况下返回?

  • 请求成功但没有需要返回的数据时
  • 服务器接受了请求但资源状态未发生变化时
  • 仅触发异步处理且无需立即返回数据时

204 No Content的示例

更新资源的请求

PUT /api/resource/123 HTTP/1.1  
Host: example.com  
Content-Type: application/json  

{ "name": "Updated Resource", "status": "active" }  

响应示例:

HTTP/1.1 204 No Content  

解释: 在此示例中,客户端发送PUT请求以更新资源,请求成功后,服务器返回204状态码但不包含响应体,表示操作成功且无其他数据需要返回。

删除资源的请求

DELETE /api/resource/123 HTTP/1.1  
Host: example.com  

响应示例:

HTTP/1.1 204 No Content  

解释: 当客户端发送DELETE请求删除资源且删除成功时,服务器返回204状态码。无需返回额外信息,因为状态码已表示操作成功。

注意事项

使用204 No Content状态码时需注意以下事项:

  • 响应体中不能包含内容
    204响应不应包含响应体,否则可能会导致客户端混淆。
  • 正确设置响应头
    省略或正确设置与内容相关的响应头,例如Content-TypeContent-Length

与相关HTTP状态码的比较

以下是与204 No Content相关的状态码说明:

  • 200 OK: 用于请求成功并返回响应体中包含数据时。
  • 202 Accepted: 用于请求已被接受但尚未处理完成的情况。

理解这些区别有助于正确使用204状态码。