原创作者: zdz8207
阅读:4467次
评论:0条
更新时间:2011-05-26
Ajax异步请求测试--返回时间没有任何规律
<html> <head> <title>test_coos</title> <meta http-equiv="Content-type" content="text/html;charset=utf-8"> <script type="text/javascript" src="../scripts/coos.js"></script> <script type="text/javascript" src="../scripts/coos.extend.ajax.js"></script> </head> <body> <div id="ajaxTestDiv"> <div>ajaxTestDiv</div> </div> <script type="text/javascript"> //test Ajax function testAjax() { var url = "ajax_test.action?type=localhost"; coos.ajax.sendGetRequest(url,callback,{test1:'aaa1',test2:'bbb1'}); } function callback(test1,test2,responseText) { var div = document.createElement("div"); div.style.color = "red"; div.innerHTML = "callback == " + responseText.toJson().random; document.getElementById("ajaxTestDiv").appendChild(div); } //test GetRemoteRequest function testGetRemoteRequest() { var url = "http://zhengdz.iap111.com:8080/coos/coos/ajax_test.action?type=remote"; coos.ajax.sendGetRemoteRequest(url,remoteRequestCallback,{test1:'aaa2',test2:'bbb2'},"remote_request"); } function remoteRequestCallback(test1,test2,responseText) { var div = document.createElement("div"); div.innerHTML = "remoteback == " + responseText.toJson().random; document.getElementById("ajaxTestDiv").appendChild(div); for(var i = 0; i < 10; i++) { testAjax(); testAjax(); testAjax(); testAjax(); testAjax(); testAjax(); testGetRemoteRequest(); testGetRemoteRequest(); testGetRemoteRequest(); testGetRemoteRequest(); testGetRemoteRequest(); testGetRemoteRequest(); } </script> </body> </html>
测试结果:
注:callback 为本域ajax请求回调函数生成的,remoteback为全域名(跨域)请求生成的,
1248165744556为ajax请求带上的随机参数,后面的_0是服务端计算器生成的,即请求一次方法加1
从下面结果可以看出ajax异步请求回调函数没有明显规律,不能够根据请求顺序来判定回调时间--一般人不会直接按照请求顺序来处理回调函数之间的关系,但有些人会用setTimeout作假设进行,在某种情况是是可行的,例如本测试中1,2不会在最后才显示,但由于网络原因等诸多因素仍然存在回调时间的不确定性。所以最好是当作完全没有规律来处理。
ajaxTestDiv
callback == 1248165744556_0
callback == 1248165744560_5
callback == 1248165744558_2
callback == 1248165744564_3
callback == 1248165744572_1
callback == 1248165744568_4
remoteback == 1248165744578_6
remoteback == 1248165744580_11
remoteback == 1248165744581_10
remoteback == 1248165744582_7
remoteback == 1248165744584_9
callback == 1248165744592_13
remoteback == 1248165744585_8
callback == 1248165744586_12
callback == 1248165744603_14
callback == 1248165744596_15
callback == 1248165744599_17
callback == 1248165744616_18
remoteback == 1248165744615_20
remoteback == 1248165744616_16
remoteback == 1248165744618_19
callback == 1248165744625_22
remoteback == 1248165744619_21
remoteback == 1248165744628_23
callback == 1248165744629_24
remoteback == 1248165744624_25
callback == 1248165744634_26
callback == 1248165744650_27
remoteback == 1248165744663_29
callback == 1248165744640_28
callback == 1248165744651_30
remoteback == 1248165744665_31
remoteback == 1248165744667_32
remoteback == 1248165744668_33
remoteback == 1248165744670_35
remoteback == 1248165744671_34
callback == 1248165744673_36
callback == 1248165744681_37
callback == 1248165744684_40
callback == 1248165744688_38
callback == 1248165744698_41
callback == 1248165744694_39
remoteback == 1248165744702_44
remoteback == 1248165744704_43
remoteback == 1248165744707_42
remoteback == 1248165744709_45
remoteback == 1248165744711_46
remoteback == 1248165744712_47
callback == 1248165744714_48
callback == 1248165744724_50
callback == 1248165744718_49
callback == 1248165744736_52
callback == 1248165744728_51
callback == 1248165744732_53
remoteback == 1248165744742_54
remoteback == 1248165744744_55
remoteback == 1248165744746_56
callback == 1248165744764_61
callback == 1248165744756_57
callback == 1248165744775_62
callback == 1248165744760_63
remoteback == 1248165744747_58
remoteback == 1248165744749_59
remoteback == 1248165744751_60
remoteback == 1248165744783_65
callback == 1248165744772_64
remoteback == 1248165744787_66
remoteback == 1248165744789_67
remoteback == 1248165744791_69
remoteback == 1248165744792_70
callback == 1248165744779_68
remoteback == 1248165744794_71
callback == 1248165744796_72
callback == 1248165744820_73
callback == 1248165744805_74
callback == 1248165744810_75
callback == 1248165744802_76
callback == 1248165744813_77
remoteback == 1248165744824_78
remoteback == 1248165744828_79
remoteback == 1248165744830_81
remoteback == 1248165744833_82
remoteback == 1248165744835_80
callback == 1248165744839_86
remoteback == 1248165744837_83
callback == 1248165744852_85
callback == 1248165744843_84
callback == 1248165744860_87
callback == 1248165744856_88
callback == 1248165744867_89
remoteback == 1248165744871_93
remoteback == 1248165744874_90
remoteback == 1248165744876_91
callback == 1248165744888_95
callback == 1248165744892_96
callback == 1248165744899_97
callback == 1248165744904_98
callback == 1248165744914_99
callback == 1248165744901_100
callback == 1248165744923_107
callback == 1248165744927_108
callback == 1248165744930_109
callback == 1248165744935_110
callback == 1248165744939_112
callback == 1248165744943_113
remoteback == 1248165744876_118
remoteback == 1248165744885_92
remoteback == 1248165744886_94
remoteback == 1248165744918_102
remoteback == 1248165744913_101
remoteback == 1248165744916_103
remoteback == 1248165744917_105
remoteback == 1248165744920_106
remoteback == 1248165744922_104
remoteback == 1248165744946_111
remoteback == 1248165744948_114
remoteback == 1248165744958_119
remoteback == 1248165744959_115
remoteback == 1248165744962_117
remoteback == 1248165744957_116
评论 共 0 条 请登录后发表评论