Long-Polling和setTimeout之间有什么区别 我发现这是为了长时间轮询,但它与setTimeout没有任何区别。
(function poll(){
$.ajax({ url: "server", success: function(data){
//Update your dashboard gauge
salesGauge.setValue(data.value);
}, dataType: "json", complete: poll, timeout: 30000 });
})();
答案 0 :(得分:0)
我猜您的代码所做的是正常轮询。
长轮询使客户端请求保持打开状态,直到将新数据发送到客户端。 Wikipedia充其量描述了它:
通过长轮询,客户端从服务器请求信息 与正常轮询完全一样,除了它发出HTTP / S请求 (民意调查)频率慢得多。如果服务器没有 收到投票时客户可获得的信息, 服务器保留请求,而不是发送空响应 打开并等待响应信息变为可用。一旦它 是的,服务器立即向客户端发送HTTP / S响应, 完成打开的HTTP / S请求。通过这种方式通常的反应 延迟(信息首次可用之间的时间) 和下一个客户端请求)否则与轮询客户端相关联 被淘汰了。