最近做一個評論功能時,想要實現實時異步刷新評論功能,於是使用了ajax輪詢,這里簡單記錄一下ajax輪詢的原理及使用方法。
ajax輪詢的原理就是客戶端定時向服務端發送ajax請求,服務器接到請求后馬上返回響應信息並關閉連接,然后客戶端繼續發送ajax請求,一直持續這個循環。
var getting = { url:'請求地址', dataType:'json', success:function(res) { $('#com').html(str); setTimeout(function(){$.ajax(getting);},5000);//5秒后定時發送請求 } }; $.ajax(getting)
ajax輪詢的方式實現比較簡單,但是比較浪費服務器的資源,服務器大多時間處理的是無用的請求。
最近在關注HTML5的一個新的協議websocket,實現了瀏覽器與服務器的全雙工通信,可以很好地節省服務器資源。他的原理是客戶端向服務器發送請求后,如果服務器沒有新數據就不做響應,等有新數據時,服務器就主動向客戶端傳遞數據。