我正在使用jQuery和JSON製作聊天腳本,但由於'資源使用限制',我的主機暫停了它。我想知道是否有可能(以及如何)減少這些請求。我讀了一個關於Ajax超時的問題,但我對Ajax並不擅長。的代碼是:減少Ajax請求
function getOnJSON() {
var from;
var to;
var msg_id;
var msg_txt;
var new_chat_string;
//Getting the data from the JSON file
$.getJSON("/ajax/end.emu.php", function(data) {
$.each(data.notif, function(i, data) {
from = data.from;
to = data.to;
msg_id = data.id;
msg_txt = data.text;
if ($("#chat_" + from + "").length === 0) {
$("#boxes").append('...some stuf...');
$('#' + from + '_form').submit(function(){
contactForm = $(this);
valor = $(this + 'input:text').val();
destinatary = $(this + 'input[type=hidden]').val();
reponse_id = destinatary + "_input";
if (!$(this + 'input:text').val()) {
return false;
}
else {
$.ajax({
url: "/ajax/end.emu.php?ajax=true",
type: contactForm.attr('method'),
data: contactForm.serialize(),
success: function(data){
responsed = $.trim(data);
if (responsed != "success") {
alert("An error occured while posting your message");
}
else {
$('#' + reponse_id).val("");
}
}
});
return false;
}
});
$('#' + from + '_txt').jScrollPane({
stickToBottom: true,
maintainPosition: true
});
$('body').append('<embed src="http://cdn.live-pin.com/assets/pling.mp3" autostart="true" hidden="true" loop="false">');
}
else {
var pane2api = $('#' + from + '_txt').data('jsp');
var originalContent = pane2api.getContentPane().html();
pane2api.getContentPane().append('<li id="' + msg_id + '_txt_msg" class="chat_txt_msg">' + msg_txt + '</li>');
pane2api.reinitialise();
pane2api.scrollToBottom();
$('embed').remove();
$('body').append('<embed src="http://cdn.live-pin.com/assets/pling.mp3" autostart="true" hidden="true" loop="false">');
}
});
});
}
上限爲600 請求數/ 5 分鐘,我需要使它幾乎每個第二。我有一年已經支付,他們沒有退款,也無法修改服務器,只能訪問cPanel
。
什麼是「資源使用限制」到底是什麼?總共請求太多?數據太多?請求頻率太高?如果請求太多,那麼可能要查看Web套接字? – 2012-02-18 23:16:54
@PaulGrime總共限制600次請求,每次5分鐘,試圖每秒獲得1次請求幾乎是實時的。我聽說有關AJAX的一些超時,但不明白,:S – Luis 2012-02-19 17:48:07
我強烈建議更改提供程序。這是一個**非常**限制性的恢復 – HerrSerker 2012-02-27 13:25:04