如何防止 Mozilla Firefox 使用多个 TCP 连接?
How to prevent Mozilla Firefox to use multiple TCP connections?
我有一个小型嵌入式网站,用户可以在其中使用 摘要式身份验证 通过输入表单和 ajax 请求向我的 HTTP 服务器发送一些数据。我的 HTTP 服务器仅限于 1 个用于 HTTP 请求的 TCP 连接。如果请求完成,则加载另一个页面 location.replace(newSite)
。
问题是,在第一个 ajax 请求之后,Firefox 想要创建一个到服务器的新 TCP 连接,这是不可能的,因此它失败了(我可以在 Wireshark 中看到它)。在 Chrome 中一切正常,因为它使用相同的 TCP 连接。
如果加载站点的 TCP 连接尚未关闭,第一个 ajax 请求也会出现此问题。
有没有办法通过 javascript 告诉 Firefox 它应该在使用后立即关闭每个连接,或者(更好)对任何正在进行的请求使用相同的 TCP 连接?
我已经为 ajax 请求尝试了 "Connection":"close"
,但没有任何改变。此外,我无法直接在地址栏中输入 location.replace
请求或 URL 请求。
谢谢你的帮助。
ajax 请求:
$.ajax({
url: "/res",
dataType: 'text',
cache: false,
async: true,
data: form_data,
contentType: false,
processData: false,
timeout: 300,
type: 'post',
headers: { 'Connection':'close' },
username: sUser,
password: sPass,
})
.done(function(data, textStatus, jqXHR){
window.location.replace("/site.html");
})
.fail(function( jqXHR, textStatus, errorThrown ){
alert("fail");
})
Is there a way to tell Firefox via javascript that it either should close every connection immediatly after use, or (better) to use the same TCP connection for any ongoing requests?
无法从服务器指示客户端不要使用多个并行连接,或者它应该在收到响应后立即关闭连接。
但是可以在响应完成后关闭服务器端的连接,从而强制客户端为下一个请求打开一个新的 TCP 连接。
我有一个小型嵌入式网站,用户可以在其中使用 摘要式身份验证 通过输入表单和 ajax 请求向我的 HTTP 服务器发送一些数据。我的 HTTP 服务器仅限于 1 个用于 HTTP 请求的 TCP 连接。如果请求完成,则加载另一个页面 location.replace(newSite)
。
问题是,在第一个 ajax 请求之后,Firefox 想要创建一个到服务器的新 TCP 连接,这是不可能的,因此它失败了(我可以在 Wireshark 中看到它)。在 Chrome 中一切正常,因为它使用相同的 TCP 连接。
如果加载站点的 TCP 连接尚未关闭,第一个 ajax 请求也会出现此问题。
有没有办法通过 javascript 告诉 Firefox 它应该在使用后立即关闭每个连接,或者(更好)对任何正在进行的请求使用相同的 TCP 连接?
我已经为 ajax 请求尝试了 "Connection":"close"
,但没有任何改变。此外,我无法直接在地址栏中输入 location.replace
请求或 URL 请求。
谢谢你的帮助。
ajax 请求:
$.ajax({
url: "/res",
dataType: 'text',
cache: false,
async: true,
data: form_data,
contentType: false,
processData: false,
timeout: 300,
type: 'post',
headers: { 'Connection':'close' },
username: sUser,
password: sPass,
})
.done(function(data, textStatus, jqXHR){
window.location.replace("/site.html");
})
.fail(function( jqXHR, textStatus, errorThrown ){
alert("fail");
})
Is there a way to tell Firefox via javascript that it either should close every connection immediatly after use, or (better) to use the same TCP connection for any ongoing requests?
无法从服务器指示客户端不要使用多个并行连接,或者它应该在收到响应后立即关闭连接。
但是可以在响应完成后关闭服务器端的连接,从而强制客户端为下一个请求打开一个新的 TCP 连接。