Ajax的并发调用

本文纠正了一个关于XmlHttpRequest的常见误解,即它支持并发请求。作者通过实际测试验证了这一点,并提供了如何修改ASP.NET2.0回调函数以启用并发请求的方法。并发请求的数量是有限制的,超出限制的请求将被排队。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先我要先小小的鄙视一下自己。写了这么久js,也做了不少Ajax相关的工作了,今天才知道XmlHttpRequest对象是支持并发的!

这个错误最早是在2003年刚接触XmlHttpRequest时,听一个同事说的,因为那个弟兄是js方面的专家(确实是专家,写过很受欢迎的技术书籍,目前在一个很大的公司做架构师。但人都是有盲点的嘛!),后来我也就没有再想过。唉,今天写看一段程序时突然发现了这个问题。

经过测试,在prototype.js和ASP.NET 2.0 Ajax1.0中默认都是支持的(其他的我没有测试),在ASP.NET 2.0 自带的Callback中也是支持的,但我以前写的一篇文章:ASP.NET 2.0 正式版中无刷新页面的开发中,举的例子是不支持的。把那篇文章中第二步里面提到的:


  
<%= ClientScript.GetCallbackEventReference( this , " arg " , " ReceiveServerData " , " context " ) %> ;

添加一个参数“true”,替换成:


  
<%= ClientScript.GetCallbackEventReference( this , " arg " , " ReceiveServerData " , " context " , true ) %> ;

就可以了。

虽然XmlHttpRequest是支持并发的,但并发的个数却是有限的,超过并发的提交操作会排队等待前面的结束后再提交。因为没有时间测试,具体的个数还不知道,在不同浏览器上的表现也不太清楚,那个弟兄知道了一定要告诉我呀,谢谢!

转载于:https://www.cnblogs.com/pfzhou/archive/2007/01/30/634846.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值