是否可以从一系列异步接收的响应中确定给定HTTP响应来自哪个位置?
如果这看起来像是满口,我就和你在一起。但我认为一个例子可能会澄清这个问题。
情况就是这样:我正在向不同的位置发送一些AJAX请求,这些位置可能是内部的(在同一服务器上)或外部的(在不同的服务器上)。我们将这些位置称为一个和两个。而且,为了记录,我使用jQuery Deferred
对象来处理请求。
我希望能够做的是将每个响应与其来自的位置相关联,同时保持请求异步。
因此,假设,一个返回{ "success":"true"}
而两个返回500错误,确定 one <的最简单方法是什么? / em>成功并且两个在回调中失败了吗?
同步发送请求时,这是一个微不足道的问题:发送一个并等待响应。然后发送两个并等待响应。等等,对于任何数量的地点。资源和响应之间的联系是明确的。但这对 n 请求来说不是一个很好的解决方案。
当您异步发送数据时,我似乎遇到了这个问题。一组承诺的反应只是集中在一起而且难以区分。当你单独看它们时,你在回调中得到的唯一数据是HTTP response headers,它似乎没有说明请求的来源。
对于任何数量的异步请求,有没有办法使用jQuery Deferreds确定响应的来源?
最后一个技术细节:我正在使用Amplify.js request method和Deferred plugin,这只是jQuery ajax方法和jQuery Deferreds之上的精美外套。