0

是否可以从一系列异步接收的响应中确定给定 HTTP 响应来自哪个位置?

如果这看起来很拗口,我和你在一起。但我认为一个例子可能会解决这个问题。

情况如下:我正在向不同的位置发送一些 AJAX 请求,这些位置可能是内部的(在同一台服务器上)或外部的(在不同的服务器上)。我们称这些位置为onetwo。而且,为了记录,我正在使用 jQueryDeferred对象来处理请求。

我想要做的是将每个响应与它来自的位置相关联,同时保持请求异步。

因此,假设一个返回{ "success":"true"}两个返回 500 错误,那么在回调中确定一个成功和两个失败的最简单方法是什么?

这是同步发送请求时的一个小问题:发送一个并等待响应。然后发送两个并等待响应。依此类推,适用于任意数量的位置。资源和响应之间的联系是明确的。但这对于n 个请求来说不是一个很好的解决方案。

当您异步发送数据时,我遇到的这个问题似乎出现了。一组 Promise 的响应只是集中在一起,无法区分。当您单独查看它们时,您在回调中获得的唯一数据是HTTP 响应标头,这似乎没有说明请求来自何处。

对于任意数量的异步请求,是否有任何方法可以使用 jQuery Deferreds 来确定响应的来源?

最后一个技术细节:我将Amplify.js 请求方法Deferred 插件一起使用,这只是 jQuery ajax 方法和 jQuery Deferreds 之上的一件花哨的外套。

4

0 回答 0