PDA

Visualizza versione completa : AJAX Long Polling


xeryan
30-05-2012, 23.07.46
Ciao a tutti! sto cercando di implementare il long polling per 'chiedere' nuovi contenuti solo quando disponibili risparmiando richieste HTTP, grazie a delle guide online e un po' di pratica sono riuscito a completare gli script


parte Javascript (con JQuery)
$.ajax({
url: 'http://pull.miosito.com',
cache: false,
type: 'GET',
success: function(resp) {
//post risultato se disponibile
getNewStreamPost();
},
});

parte PHP:
<?php session_start(); $user=$_SESSION['user']; if ($user=="") {header("location:../index.php");} include "../connect.php";

$time = time();
while (time()-$time<30) {
//posta i nuovi risultati se ci sono con un echo
if ($new_post>0) {break;} //stoppa lo script se trova risultati
sleep(5);
}

?>

voi mi chiederete dov' il problema ?
bene, in pratica se richiamo lo script PHP con un url relativo, funziona, ma mentre lo script PHP sta effettuando il controllo mi blocca tutte le altre richieste HTTP anche se la chiamata AJAX asincrona, invece se metto lo script PHP in un sottodominio con un url assoluto semplicemente non funziona dando un errore 302...qualcuno sa' come risolvere questo problema ? :(