chrome发送额外的请求怎么办?

Google chrome发送多个请求来获取页面,这显然不是错误,而是功能。作为开发人员,我们只需要处理它。


据我可能在五分钟内挖掘出的内容,chrome这样做只是为了使冲浪更快,因此,如果其中一个连接丢失,则第二个连接将接管。


我想如果网站开发良好,那么它的功能将不会因此受到干扰,因为多个请求并不是新请求。


但是我不确定我是否考虑了此功能可能产生的所有情况。


有什么特殊情况吗?有什么最佳做法可以应对?


更新1:现在,我明白了为什么用chrome打开页面时银行页面会出错!它说:“应该只打开浏览器的一个窗口。” 那是他们对安全威胁的解决方案?!


陪伴而非守候
浏览 683回答 3
3回答

芜湖不芜

最好的选择是遵循标准的Web开发最佳实践:不要因GET调用而更改应用程序状态。如果您担心,建议您为重复的GET调用更新数据层单元测试,并确保它们返回相同的数据。(顺便说一下,我没有看到Chrome 8.0.552.224的这种行为是新的吗?)

30秒到达战场

我在编写服务器应用程序时看到了行为,发现以前的答案可能不正确。Chrome将单个请求分配到多个http请求中,以并行获取资源。在这种情况下,它是作为单独的http get获取的图像。我已经附上了通过Wireshark捕获数据包的屏幕截图。它是对端口8080的简单获取请求,服务器将为其返回问候消息。Chrome会发送第二个获取请求,以获取您喜欢的图标,您会在打开的每个标签的顶部看到该图标。迎接超时或任何此类事情不是第二时间。应将其视为跨浏览器有所不同的另一个元素。但是,从2018年开始,并行处理多个http请求是浏览器中的一种标准操作。这是我后来发现的参考问题Chrome发送了两个请求

墨色风雨

至少在Chromium(v41)中,也可能由link具有空href属性的标签引起的。例如,以下每一行将在页面上生成一个附加查询:<link rel="shortcut icon" href="" /><link rel="icon" type="image/x-icon" href="" /><link rel="icon" type="image/png" href="" />它表明在页面中查找空属性是一个不错的起点,无论是href还是src。
打开App,查看更多内容
随时随地看视频慕课网APP