Chrome浏览器对统一资源发出多个请求时,导致最多停止20s问题
使用环境:
Chrome浏览器 v94.0,开始版本未知
问题描述:
对同一个url+相同参数向后台发送请求,如果前一个请求未执行完,后一个请求会处于等待状态,等待时间最大20秒。详见下图:
每个请求都是执行30秒,第二个请求在第一个请求约23秒后执行,所以停止了剩余的7秒,如果在第一个请求发出后10秒内发送第二个请求,会等待20秒。
解决方案:
永久:
- 每次请求增加动态参数,例如_t=new Date().getTime(),使得每次请求不同,可以避免等待。
- 添加禁用缓存参数"Cache-Control:no-cache,no-store"(未验证)
临时:
开发者模式,选择禁用缓存,如下图:
参考文档主要内容截图:
参考文档:
https://codereview.chromium.org/345643003
https://qa.1r1g.com/sf/ask/1925979611/