javascript - 是否允许发出无限数量的 XMLHTTP 请求对象?

标签 javascript ajax

关于并发ajax请求,我查看了这个页面:

How many concurrent AJAX (XmlHttpRequest) requests are allowed in popular browsers?

但是如果 onload 我有 js 脚本用代码创建许多 http 对象怎么办:

// JavaScript Document
//declare xmlhttp object
var xmlhttp = false;
var xmlhttp2 = false;



//determine browser/connection type

if (window.XMLHttpRequest)
{
    xmlhttp = new XMLHttpRequest(); 
    xmlhttp2 = new XMLHttpRequest(); 
}
else if (window.ActiveXObject)
{
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp2 = new ActiveXObject("Microsoft.XMLHTTP");
}

我有大约 6 个不同的 js 脚本,它们都是为了执行略有不同的 ajax 功能而定制的。

我的问题是,如果我在页面加载时创建了 6-10 个不同的 xmlhttp 对象,这会成为一个问题吗?

此外,即使我有20个不同的定制ajax脚本,除了我上面提到的之外,只要我没有超过3个同时运行,它们就可以同时存在,只要它们使用不同的全局变量,正确吗?

最佳答案

您可以创建的此类对象的数量仅受可用内存的限制,即对于所有实际目的来说,它是无限的。正如您提到的问题中提到的,那些没有立即提供服务的服务会排队。实际上,这意味着您的应用程序可能需要很长时间才能加载。

我会尝试将并发连接数保持在尽可能低的水平(<5)。连接数越多,用户体验就会越差。如果您有大量连接,服务器也可能会阻止您。

关于javascript - 是否允许发出无限数量的 XMLHTTP 请求对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13185821/

相关文章:

javascript - Ajax请求文档准备好会导致jquery加载缓慢

javascript - 最好的在线 javascript/css/html/xhtml/dom 引用资料是什么?

javascript - 在 MVC 中,让客户端 JavaScript 处理 View 组件是个好主意吗?

javascript - 将ajax添加到无限滚动

javascript - 如果没有用户查询的地名,我无法显示 noroom 组件

javascript - 发布时出现错误的表单数据名称

javascript - ng-click 在脚本应答器内不起作用

javascript - React-Native .js 变量未找到错误

Javascript setter 返回值而无需验证

javascript - Ajax 表单提交给两个脚本