本文介绍了如何改变这种阿贾克斯code到长轮询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是我的ajax code所以请谁能告诉我怎样才能改变这种code到长轮询?
下面是我的code: -
VAR聊天= {}
chat.fetchMessages =功能(){
$阿贾克斯({
网址:AJAX / AJAX / chat.php',
键入:POST,
数据:{方法:取},
成功:功能(数据){
$('#聊天)HTML(数据)。
}
});
}
chat.interval = setInterval的(chat.fetchMessages,1000);
解决方案
您必须把fetchMessage的下一个呼叫中的回调previous之一:
VAR聊天= {}
chat.fetchMessages =功能(){
$阿贾克斯({
网址:AJAX / AJAX / chat.php',
键入:POST,
数据:{方法:取},
成功:功能(数据){
$('#聊天)HTML(数据)。
chat.fetchMessages(); // 让我们再来一次
}
});
}
chat.fetchMessages(); //第一个电话
This is my ajax code so please can anyone tell me how can i change this code to long polling ?
Here is my code :-
var chat = {}
chat.fetchMessages = function () {
$.ajax({
url: 'ajax/ajax/chat.php',
type: 'POST',
data: { method: 'fetch' },
success: function(data) {
$('#chats').html(data);
}
});
}
chat.interval = setInterval(chat.fetchMessages, 1000);
解决方案
You have to put the next call of fetchMessage in the callback of the previous one :
var chat = {}
chat.fetchMessages = function () {
$.ajax({
url: 'ajax/ajax/chat.php',
type: 'POST',
data: { method: 'fetch' },
success: function(data) {
$('#chats').html(data);
chat.fetchMessages(); // let's do it again
}
});
}
chat.fetchMessages(); // first call
这篇关于如何改变这种阿贾克斯code到长轮询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!