用户反馈生产环境的一个列表页面加载不出来,这情况大多数出现在列表数据比较大的情况下(由于后端无法分页,故采用的是前端分页),但是切换成无痕模式是正常的。
打开F12查看接口响应情况,列表接口没有正常返回数据,状态Status为failed,错误信息是net::ERR_CONTENT_LENGTH_MISMATCH。另外还有一些前端埋点接口因为鉴权失败报的状态码401错误。
网上查了ERR_CONTENT_LENGTH_MISMATCH信息,说是什么Nginx的缓存目录已满,但我们已经很久没有去变更Nginx信息,而且在无痕模式下是正常的,感觉跟Nginx没啥关系。
为了排除干扰项,先把前端埋点401的问题处理了,原因是前端埋点的平台替换了URL和token信息,替换成正确的信息后埋点正常了。此时神奇的是,列表接口的问题也正常了!说明这个列表的接口问题是由于前面的埋点401导致的。
现在问题莫名其妙的解决了,有几个疑问点:
(1)为什么前端埋点401会影响到其他接口的正常响应?
(2)为什么在无痕模式下是正常的?
(3)另外我们在开发测试环境进行模拟,也特意设置了前端埋点401的现象,但是列表页面是正常加载的。为什么开发测试和生产环境的表现不一致?
难道是浏览器版本问题?
有大神知道的可以告知一下,多谢。