记一次http@421状态码的排查情况
- 后台返回421状态码时,浏览器底层会自动重发一次相同的请求
- F12查看只有一次请求,前端请求的返回也只有一条
- 通过抓包软件或者ng后台日志可以确认浏览器确认发了2条相同的请求
1. 过程
一次日常版本测试中,测试同事反馈某一场景下后台日志收到:接口A有2条相同的请求日志,而接口B只有一条请求日志。
1.1. 排查
- 是不是对应的请求输出日志有两条
- 不是
- 是不是接口A跨域的option请求
- 不是,这个接口虽然跨域,但是因为是简单请求,所以没有option请求。
- 是不是前端代码逻辑问题
- 不是,通过F12调试看网络请求只有一个请求。对应的业务代码也只收到一次回调。
- 通过抓包软件查看,确实有两次相同的接口A请求
- 该接口http@200成功时的日志情况
- 接口A只有一条请求记录。
- 查看http规范中421状态码的说明,同时找后台同事切换到其他错误码423验证,只有一条请求记录。
- 老机型的部分浏览器验证
- http@421只发了一次请求。
大约 1 分钟约 416 字