使用JavaScript和jQuery的简单长轮询示例

时间:2012-12-25 01:31:56

标签: javascript jquery asynchronous

我正在尝试创建一个实时网站分析仪表板,它使用jQuery / JavaScript异步创建与服务器的开放HTTP连接,以便在服务器发生时轮询服务器以获取更新数据。

明显的开始是使用XMLHttpRequest对象或jQuery的$.ajax方法向服务器发送GETPOST请求,异步请求一些数据。

但是,除了每setInterval个方法使用30 seconds方法一次发送一个请求之外,我不确定如何连接到服务器持久性。基本上,我只想发送一个http请求,并确保与服务器的连接保持打开以进行轮询!

我的setInterval示例代码如下:

<div id="analytics"></div>
<script>
var analytics = document.getElementById('analytics');
setInterval(function(){
    $.ajax({ url: "http://server.com/", success: function(data){
        analytics.innerHTML = data;
    }, dataType: "json"});
}, 30000);
</script>

1 个答案:

答案 0 :(得分:13)

在线搜索后,这是我正在寻找的答案不使用 sockets.ioWebSockets,但确实使用 {{ 1}}利用其jQuery方法创建一个人工循环:

complete

来自Technoctave的来自Tian Davis:http://techoctave.com/c7/posts/60-simple-long-polling-example-with-javascript-and-jquery