含义
请求成功,没有需要返回的响应体。响应头中仍可携带新的 ETag 等元数据。
常见原因
- DELETE 成功
- PUT 或 PATCH 保存了修改但不返回资源
- CORS 预检或 beacon 端点的响应
解决方法
客户端或访问者
不要尝试解析响应体;对 204 调用 response.json() 会抛出异常。读取前先检查状态码。
网站或 API 的维护者
204 绝不能带响应体。如果客户端需要更新后的资源,就返回带 JSON 的 200。
响应示例
HTTP/1.1
HTTP/1.1 204 No Content
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx 规范
常见问题
› 为什么对 204 调用 response.json() 会失败?
因为没有可解析的响应体。调用 json() 之前先检查 response.status === 204(或内容长度)。
› DELETE 应该返回 204 还是 200?
没有内容可报告时返回 204;返回被删除的条目或确认信息等响应体时返回 200。