API 调试时如何阅读 HTTP 状态码
把状态码类别、响应体、响应头和日志放在一起看,避免把一个状态码当成完整诊断结论。
把状态码类别、响应体、响应头和日志放在一起看,避免把一个状态码当成完整诊断结论。
1xx 是信息响应,通常出现在协议协商过程中。
2xx 表示 HTTP 请求成功,但响应体仍要按业务规则复核。
3xx 指向重定向或缓存验证,需要检查 Location 和缓存相关响应头。
4xx 通常表示服务器拒绝当前请求。
5xx 通常表示服务器、网关或上游服务失败。
记录请求方法、URL、查询参数、请求头、请求体、响应体、请求 ID 和时间戳。缺少 Authorization 头导致的 401,和 Token 过期导致的 401 处理方式不同;staging 环境的 404 也可能只是路由还没部署。
状态码不能证明域名可信、业务数据有效,也不能证明重试一定安全。应把它当作协议信号,再单独验证业务规则和系统状态。
常见问题
不一定。它只表示 HTTP 请求成功,响应体里仍可能包含校验警告、部分结果或应用层错误。
不应该。只有操作安全或具备幂等性时才适合重试;遇到 408、429、502、503、504 等暂时性问题时也要使用退避策略。
不能。状态码可以帮助框定问题,但根因分析仍需要服务端日志和请求 ID。
延伸阅读
继续探索