首页/网络/协议速查/205 Reset Content 重置视图
HTTP 方法与状态码91 条

205 Reset Content 重置视图

要求客户端重置发起请求的文档视图(如清空表单),供「提交后重置输入」类交互使用。

协议速查网络更新于 2026-10-13

205 是什么

205 Reset Content 要求客户端在收到响应后重置发起请求的文档视图,例如清空表单输入、复位画布状态、取消当前选择(RFC 9110 §15.3.6)。它和 204 的唯一区别是:204 表示「成功且不要改变视图」,205 表示「成功且请把视图复位」。响应必须不带实体内容,也不应携带描述内容的类型头。

基本信息

名称205 Reset Content
类别2xx 成功
规范RFC 9110 §15.3.6
响应体必须为空(常用 Content-Length: 0)
浏览器支持稀少,实际多用 204 加脚本实现
与 204 差异只多一条「要求客户端重置视图」的语义

典型使用场景

  • 表单提交后清空输入的流程设计,语义上最贴切的响应码
  • 富交互页面:操作完成后复位视图状态(画布、选择器、编辑器)
  • 前端框架与协议研究者:厘清 204、205、303 各自的分工
  • 排障:解释某些老系统提交后输入不残留的行为
  • API 设计评审:确认「无返回体」与「要求重置视图」是两件事
  • 自动化测试:断言响应为空体且状态码为 205 而非 200

请求与响应示意

请求与响应示意
POST /form HTTP/1.1
Content-Type: application/x-www-form-urlencoded

name=alice

HTTP/1.1 205 Reset Content        # 提交成功,请客户端重置表单视图
Content-Length: 0                 # 必须无实体内容
# 浏览器不会自动清空表单,实际仍由页面脚本处理

204 与 205 与 303 怎么选

状态码语义典型用法
204成功、无实体、不改变视图DELETE、PUT 成功后无需返回内容
205成功、无实体、要求重置视图表单提交后清空输入
303请改用 GET 访问新地址提交后跳转结果页,防重复提交
200成功并返回实体需要把处理结果回传给调用方
主流浏览器与前端框架普遍不实现 205 的视图重置动作,用它实现「提交后清空表单」并不可靠,客户端仍需脚本兜底。
205 响应必须没有实体,也不应带描述内容的 Content-Type;若需要返回处理结果数据,改用 200 更合适,否则客户端可能因空体解析失败。
在需要防重复提交的场景里,303 配合 GET 的目标地址更符合「提交后跳转」的通行做法,语义也更清晰。

易错点

  • 期待浏览器自动清空表单多半落空:主流浏览器不执行 205 的重置动作,业务上要用脚本或让服务端返回新页面
  • 205 携带响应体会让部分客户端解析异常:规范要求空体,别把数据塞进去
  • 需要防重复提交时 205 不如 303 直接:303 引导客户端用 GET 重新请求,更符合提交后跳转的模式
  • 把「无内容返回」一律写成 205 会传递错误语义:不需要客户端改变视图时应当用 204

数据来源与参考

  • RFC 9110 §15.3.6 205

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌