当chrome被最小化时,XHR请求超时



我在一个web应用程序上工作,它使用长轮询技术从rest服务器获取推送类型更新。

它运行setTimeout(),执行一个函数,该函数以120秒的超时执行xhr GET请求。它还向服务器发送一个特殊的60秒的"Accept-Wait"报头,告诉服务器何时用200和no数据回复客户端。然后客户端重复这个setTimeout。当客户端"登录"到服务器时,这个过程将永远持续下去。

我有一个使用Chrome的用户(他只能使用Chrome,所以我还没有验证这是否在其他浏览器中可重复,因为没有人可以重现这个问题),当他最小化时,GET请求开始超时。在我的长轮询器看来,服务器好像坏了。

我在其余服务器上启用了调试,并确认在2分钟内没有来自该用户的任何信息(似乎表明GET请求没有离开浏览器)。我也看了在Chrome终端(F12)"network"选项卡,表明请求在2分钟时"取消",表明它们超时了。当使用"localhost"时,这个问题也会重现,我认为这排除了网络问题。

我怎么能得到更多关于Chrome关于为什么它不让http流量出这个用户的信息?

谢谢

如果这个问题只发生在google chrome中,也许它正在丢弃你的标签,你可以通过禁用一个标志来防止它,在地址栏上输入以下url,看看它是否启用:

chrome://flags/#automatic-tab-discarding

相关内容

  • 没有找到相关文章

最新更新