首页 新闻 搜索 专区 学院

Ajax并发造成数据异常的问题

0
悬赏园豆:20 [已解决问题] 解决于 2011-03-15 12:32

项目中有一个A页面会使用Ajax调用B页面获得数据,我使用的是原生的Ajax方法(xmlHttp = new ActiveXObject('Microsoft.XMLHTTP'))的方式,用户少的话一切正常,但是人多了的话就会造成数据混乱

只是B页面获得A传入的参数,Response.Write一些数据,然后再显示在A页面上而已。

例如:可能用户A获得是用户B的结果,而用户B获得了用户C的结果。

为什么会这样呢?(B页面的方法中没有使用Static变量),还请高手指教!

问题补充: 今天又看了下代码,发现页面中有个封装好的控件,里面使用了静态变量用于组织查询的表和参数,是否是由于这个使用静态变量造成的数据异常呢?
webaspx的主页 webaspx | 小虾三级 | 园豆:1975
提问于:2011-03-09 16:13
< >
分享
最佳答案
0

你这个“人多”是在不同的客户端调用,还是在一个机子上多次请求?

如果是不同客户端请求应该不会出现上述问题。因为一个客户端在服务器上对应了一个会话〔有一个唯一的会话ID〕,b获取数据是获取“特定会话ID”下的传奇参数。

收获园豆:20
邢少 | 专家六级 |园豆:10924 | 2011-03-09 16:50
是不同的客户端,确实出现了这种异常,我也感觉不可能。
webaspx | 园豆:1975 (小虾三级) | 2011-03-09 16:52
@webaspx:
如果是用了静态变量,那肯定会影响结果。
a请求:赋值a-request 同时 b请求:赋值b-request。间隔很短的话,那么可能出现a返回的是b-request的情况。
邢少 | 园豆:10924 (专家六级) | 2011-03-10 09:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册