HTTP 状态码HTTP Status Codes
一句话
HTTP 状态码是服务器每次响应时给出的三位数字,概括这次请求的处理结果。
大白话
状态码像快递的物流状态:“已签收”“地址不存在”“收件人拒收”“网点异常”,你不用打电话问,一眼就能知道这件包裹大概出了什么事。
比喻的边界
物流状态只说结果不说原因,“网点异常”背后可能有一百种情况;状态码 500 也一样,只是排查的起点,根因要看服务器日志。
拿去就能用
我在给写错误处理。帮我列出它可能返回的状态码,每种对应什么情况、页面上给用户显示什么提示。先给我一张对照表,确认后再改代码。
还差:某个接口,发给 AI 前记得换掉
打开 /dashboard 时,请求 /api/stats 返回 401,可我明明登录了。我怀疑这条请求没带上登录凭证,先帮我对比它和能成功的请求的请求头有什么不同,贴出来前把敏感值换成 ***。
我的接口不管成功失败都返回 200,只在内容里写 success 真或假,前端判断很乱。帮我评估改成按状态码区分要改哪些地方、会不会影响现有页面,先给方案再动手。
别这样说 → 这样说
别这样说
登录接口 500 了,后端出问题了吧?修一下。
这样说
登录接口从今天中午开始返回 500,响应里只有 “Internal Server Error”。同一时间的后端日志贴在下面,密码和密钥已换成 ***。帮我根据日志找到出错的代码行,说明原因再改。
差别:给了时间、响应原文和服务器日志,AI 能从证据出发,而不是凭一个 500 去猜。
误解4 开头就是前端写错了,5 开头就是后端写错了。
其实是4xx 表示服务器认为请求本身有问题(没登录、没权限、找不到),5xx 表示服务器处理时出错;具体根因都要看请求内容和日志。
展开专业理解
状态码分五类:1xx 信息,2xx 成功,3xx 重定向,4xx 客户端错误,5xx 服务器错误。常见的有 200 成功、301 和 302 跳转、400 请求有误、401 未认证、403 无权限、404 找不到、500 服务器内部错误。有的网站会用 404 隐藏无权访问的资源,所以数字只是线索。
来源
- MDN:HTTP response status codes 核对于 2026-09-26