新手第一次看 HTTP 状态码,先搞懂这 5 组数字就够了
打开网页或调接口时,浏览器和程序常返回一串三位数字:200、404、500。很多新手只认得 404 是“找不到”,其他数字一概当成“出错了”。其实状态码是按百位分组的,先认组、再认具体数字,排查方向立刻就清楚了。
第一,2 开头是成功。200 是最常见的“请求成功”,201 表示“已创建”,常出现在新建资源后;204 表示“成功但没有返回内容”,比如删除成功后不返回正文。看到 2 开头,先别慌,说明请求已经走通了,问题多半在返回的数据格式上,而不是网络或服务器挂了。
第二,3 开头是重定向。301 是永久搬家,浏览器以后会直接去新地址;302、307 是临时跳转,本次去别处、下次还按原地址来。登录后跳回首页、短链接跳转到长地址,都是 3 开头在工作。遇到循环跳转(页面来回跳个不停),多半是两个地址互相指着对方,检查跳转规则就能定位。
第三,4 开头是客户端问题。400 是请求本身写错了,比如参数缺了、格式不对;401 是没登录或凭证过期,先重新登录再试;403 是登录了但没权限,别反复重试,先确认账号有没有这个资源的访问权;404 是地址不存在,可能是路径拼错、资源已删除。4 开头先查自己这边:地址、参数、登录状态、权限,一步步排除。
第四,5 开头是服务端问题。500 是服务器内部出错,原因要看服务端日志;502 是网关没连上后面的服务,可能是服务挂了或正在重启;503 是服务暂时不可用,常出现在维护或过载时。5 开头不是你的请求写错了,先等一会儿再试,持续出现就把时间、地址和状态码记下来反馈给服务端同学。
第五,状态码要和请求一起看。只记一个数字不够,还要看请求方法、请求地址和返回正文:同样是 404,GET 一个不存在的页面和 POST 到错的接口,原因完全不同;同样是 401,凭证过期和压根没带凭证,处理方式也不一样。排查时先把“方法 + 地址 + 状态码 + 关键报错”四样记全,再按分组定方向,就不会在 4 开头和 5 开头之间来回猜了。
串起来就是:2 成功、3 跳转、4 查自己、5 等服务端、再加请求上下文一起看。记住这 5 组,状态码就从“看不懂的数字”变成“指路牌”了。
- 点赞
- 收藏
- 关注作者
评论(0)