Skip to main content

Response 响应详解

HTTP 响应状态码用于指示请求是否成功完成,按首位数字可分为五类:1xx 信息响应、2xx 成功响应、3xx 重定向、4xx 客户端错误、5xx 服务端错误。


📘 HTTP 响应状态码分类总览

分类范围描述
1xx100-199信息响应,请求已接收,继续处理
2xx200-299成功响应,表示请求已完成
3xx300-399重定向,需要进一步操作
4xx400-499客户端错误,语法或权限问题
5xx500-599服务器错误,请求有效但服务器错误

🔍 各类状态码详解

Response 响应详解

理解常用的 HTTP 响应状态码有助于编写符合标准的 API,并优化前后端的通信体验。


✅ 常见 HTTP 状态码一览(含描述与使用场景)

状态码描述使用场景
100 Continue初始部分已接受,继续发送请求客户端发送大请求体前先探测
101 Switching Protocols协议切换请求成功升级 HTTP 到 WebSocket
102 ProcessingWebDAV 正在处理请求适用于长处理任务
103 Early Hints响应头提前返回预加载资源,如 preload 链接
200 OK请求成功GET/PUT 成功返回资源
201 Created创建成功POST 成功创建资源
202 Accepted请求已接受但未完成异步提交任务等
203 Non-Authoritative Information返回非原始服务器信息代理缓存数据
204 No Content请求成功无返回体DELETE/PUT
205 Reset Content请求成功,重置页面视图表单提交后清空界面
206 Partial Content部分响应内容成功用于 Range 请求下载文件片段
300 Multiple Choices多个可选响应多语言、多格式选择
301 Moved Permanently永久重定向旧页面永久跳转
302 Found临时跳转登录重定向
303 See Other获取资源应使用 GET提交表单后跳转详情页
304 Not Modified缓存命中无更新结合 ETag/If-None-Match 使用
307 Temporary Redirect临时重定向,保留方法POST 保持 POST
308 Permanent Redirect永久重定向,保留方法API 路由调整永久迁移
400 Bad Request请求语法无效参数错误、格式错误
401 Unauthorized未认证未登录访问私有接口
403 Forbidden已认证但无权限普通用户访问管理员接口
404 Not Found资源不存在链接或接口错误
405 Method Not Allowed方法不允许POST 接口被 GET 请求
406 Not Acceptable不接受的内容格式Accept 头与响应类型不符
407 Proxy Authentication Required代理需认证使用代理服务器访问
408 Request Timeout客户端超时长时间无响应或请求慢
409 Conflict请求冲突注册用户已存在、并发冲突
410 Gone资源永久删除接口或数据废弃
411 Length Required缺失 Content-LengthPUT 上传数据缺长度
412 Precondition Failed前提条件失败If-Match 校验失败
413 Payload Too Large请求体过大上传文件超出限制
414 URI Too LongURL 过长GET 参数过多
415 Unsupported Media Type类型不支持Content-Type 错误
416 Range Not Satisfiable请求范围无效下载超范围
417 Expectation Failed期望失败Expect 头检查失败
418 I'm a teapot彩蛋码拒绝冲泡咖啡(RFC 2324)
422 Unprocessable Entity请求语义错误表单验证失败
425 Too Early请求过早TLS Early Data 重放攻击风险
426 Upgrade Required需升级协议HTTP/1.1 → HTTP/2
429 Too Many Requests请求频繁被限流接口防刷保护
431 Request Header Fields Too Large请求头太大cookie 或 UA 过长
500 Internal Server Error服务器内部错误未处理异常或配置错误
501 Not Implemented不支持的功能接口未实现
502 Bad Gateway网关无效响应Nginx/代理后端异常
503 Service Unavailable服务不可用服务宕机、维护中
504 Gateway Timeout网关超时下游服务超时
505 HTTP Version Not Supported协议版本不支持HTTP/0.9、未知版本
507 Insufficient Storage存储不足文件服务存储用尽
511 Network Authentication Required需要网络验证WiFi 登录页认证

🧪 实战代码示例

app.get('/success', (req, res) => {
res.status(200).send('OK');
});

app.post('/create', (req, res) => {
res.status(201).send('Resource created');
});

app.get('/not-found', (req, res) => {
res.status(404).send('Not Found');
});

app.get('/server-error', (req, res) => {
res.status(500).send('Internal Server Error');
});

🧠 Tips & Best Practice

tip

建议始终根据请求结果返回对应语义的状态码,避免全部使用 200。


📚 参考资料