Attualmente sto implementando una sorta di HTTP Push usando Long Polling per i browser che non supportano le risposte ajax multipart.Brower che entrano nello stato "busy" su richiesta Ajax
devo ammettere che, mentre il lato server sta lavorando bene, io sono relativly nuovo al front-end javascript di sviluppo, e quindi può aver fatto alcuni errori evidenti
Il problema è il seguente LongPolling funziona perfettamente su IE 6 , 7,8 e Firefox (anche se Firefox usa multipart lo ha testato con un lungo polling) ma Safari e Chrome immettono lo stato "occupato" del browser durante le richieste Ajax nello stato . (Essi mostrano le finestre attesa del cursore, e Safari mostra anche il suo indicatore "Loading" nella barra del titolo)
Questo è, naturalmente, non è desiderabile ..
Ecco il mio codice per fare la lunga sondaggio sulla base di jQuery 1.4.1:
function MepSubscribeToQueueLongPoll(name, callback) {
var queueUrl = MepGetQueueUrl(name, "LongPoll");
MepLongPollStep(queueUrl, callback);
};
function MepLongPollStep(url, callback) {
$.ajax({
url: url,
async: true,
cache: false,
success: function (data,status,request) {
callback(request.responseText);
MepLongPollStep(url, callback);
}
});
};
Nota che sto bypassando i dati parsing funzionalità di jQuery passando il request.responseText direttamente al callback perché Jquery non sembra supportare respones ajax più parti e volevo essere coerenti in tutta la comunicazione percorsi.
Grazie, mi sembra di sapere poco sul comportamento del browser, ma il tuo consiglio risolto il problema su tutti i browser – Gluber