当我尝试发送一些 POST 数据时,XMLHttpRequest 对象会导致两个 TCP SYN 数据包。这发生在不到一毫秒的时间内。我无法在任何其他浏览器中重现此行为(使用最新的 Firefox 和 Google Chrome 浏览器测试)。
即使是“异步”标志或超时设置似乎也没有改变这种情况。
问题是当 IE9 发送两个 SYN 时,它们将被服务器的 TCP/IP 堆栈自动确认。但不幸的是,IE9 在第二个流中发送 Post 数据,这意味着 Web 服务器已经在等待第一个套接字上的字节(导致超时)。发生这种情况是因为我们谈论的是可以一次处理一个套接字的单线程 Web 服务器。
有什么建议或想法吗?
我想阻止 IE9 一次建立两个套接字。
无论我是使用 Jquery ajax 函数还是在 java 脚本中自己实现它,都会发生这种情况。
此致
马蒂亚斯