JS代码:
<script> function longPolling() { $.ajax({ url: "testlp",data: { "time": 2,"timeout": 3 },//time:假设传输数据时间,timenout:最大延迟 dataType:'JSON',success: function (data) { //输出data longPolling(); } }); } </script>
服务器代码:
public string testlp(int time,int timeout) { // 死循环 查询有无数据变化 while (true) { System.Threading.Thread.Sleep(1000);// 休眠1000毫秒 int i = 1; if (i > timeout) { break; }//最大延迟 else { i++; int compl = 1; //模拟数据库时间 if (compl != time)//对比数据库中时间变化,此处一直进入if { string data= 数据库中数据 // 返回数据信息,请求时间、返回数据时间、耗时 //writer.print("result: " + i + ",response time: " + responseTime + ",request time: " + timed + ",use time: " + (responseTime - timed)); return data; break; // 跳出循环,返回数据 } } } return "false";//不会执行 }