jQuery Ajax如何知道哪个响应数据与哪个成功回调?

Ton*_*ich 2 javascript jquery packet-capture packet-sniffers

我有一个带有几个jQuery ajax调用的网页,这些调用同时针对.NET Web方法异步激活.

这些Web方法返回数据,以便由每个.ajax调用的成功回调处理.

我的问题可能是低水平的.jQuery/Javascript如何知道哪些数据返回哪个.ajax调用?我使用网络嗅探器查看了返回数据包,但我看不到任何可用于将其链接回原始呼叫的标识.我的猜测它与jqXHR对象有关.如果它在响应数据包中,我在嗅探器中看不到它.

任何技术解释都可能有所帮助.

另外: 我问这个是因为我将在服务器端使用异步方法..ajax最初调用的方法不是返回数据的方法.一个不同的线程正在做这项工作.

Leo*_*opd 5

浏览器可以从Web服务器请求多个图像并知道将每个图像放在页面上的相同方式.它是HTTP协议的一部分.浏览器发送请求,响应在同一TCP套接字上发送.如果浏览器同时等待多个对象,则会打开多个TCP套接字.

在您的数据包嗅探器中,仔细查看TCP端口号,特别是响应端口(非80端口).

您的浏览器和Web服务器/框架将做正确的事情.在服务器端,确保将响应发送到相应的请求,它将返回到jquery中的正确位置,无论收到订单还是处理时间.如果你有多个线程在服务器上交换数据,那么你的生活就会比你需要的更难,所以我认为你有充分的理由知道你在做什么.