技术与工程已解决
接口返回 400、401、403、404、500 时怎样排查?
用请求信息、响应体和权限语义系统判断常见 HTTP 错误的责任边界。
问题正文
调用接口失败时只看到 400、401、403、404 或 500,不知道应该检查前端、权限还是服务端。
有没有一套固定的排查顺序?
用请求信息、响应体和权限语义系统判断常见 HTTP 错误的责任边界。
问题正文
调用接口失败时只看到 400、401、403、404 或 500,不知道应该检查前端、权限还是服务端。
有没有一套固定的排查顺序?
ANSWERS
回答内容
先记录 URL、请求方法、状态码和不含机密的响应体。400 多为参数错误,401 是未认证,403 是身份已知但无权限,404 是路径或资源不存在,500 是服务端未处理异常。
在 Network 面板确认实际请求 URL 和方法。
检查请求头、参数和响应体。
401/403 从登录态与权限排查,404 从路径与 ID 排查。
500 使用请求 ID 关联受控服务端日志。
const res = await fetch(url, options);
const text = await res.text();
if (!res.ok) throw new Error(`${res.status}: ${text}`);不要只凭状态码猜测,响应体和服务端日志通常提供具体原因。
排错日志不要输出 Authorization、Cookie、完整 Token 或用户隐私数据。
MDN:HTTP status codes:https://developer.mozilla.org/en-US/docs/Web/HTTP/Status