结果从我制作它们的序列中不按顺序回归。如果我等待每个请求完成结果都没问题,但需要的时间比我想要的要长。有没有办法让我跟踪哪个结果属于哪个请求?
编辑:每个请求我正在添加执行JSON调用的代码。
for (var i = 0; i < rssLinkDB.length; i++) {
jQuery.getJSON(encoded, function(data){
yLinkDB.push(data.query.results.result);
index++;
if (index == 10) {
state = "RequestLikes";
}
});
}
答案 0 :(得分:1)
如果您正在调用服务器端方法,则可以使用自定义HTTP标头作为标记来跟踪请求/响应所有权。
在服务器端方法中添加自定义HTTP标头,并使用其密钥从客户端获取值:
// In Server Side method (e.g ASP.NET Page Method):
HttpContext.Current.Response.AddHeader("MyCustomKey", "TheValue");
// In jQuery callback body:
var myCustomHeader = XMLHttpRequest.getResponseHeader("MyCustomKey");
// now do whatever you want based on myCustomHeader value...
答案 1 :(得分:0)
使回调函数名称唯一/动态,最好命名这些函数,以免污染全局范围。
callbackHandlersNS.callback1 = function () {/* handle first request*/};
callbackHandlersNS.callback2 = function () {/* handle second request*/};
...