PHP와 jQuery에서 긴 폴링 (예 : this)을 기반으로하는 채팅을하고 있습니다. 한 번 전체 페이지가 브라우저에서 다운로드되면 함수는 백엔드에 대한 긴 폴링 요청을 일부 시간 초과 한도로 만듭니다. 데이터가 백엔드에서 왔을 때 다시 폴링 요청을 보내고 오류가 발생하면 다시 새로운 긴 폴 요청.jquery PHP 긴 폴링 요청 문제
문제점 : 파이어 버그로 추적을 분석 한 결과, 긴 폴링 요청이 3 ~ 4 회 실행되는 것으로 나타났습니다. 그러나 그렇게해서는 안됩니다. 페이지 당 하나의 긴 폴링 요청 만 실행해야합니다.
그러나 코드는 완벽하게 작동합니다. 그러나 긴 폴링 요청 중복이 문제입니다.
function listen_for_message(){
// this functions is makes the long-polling request
$.ajax({
url: "listen.php",
timeout:5000,
success: function(data) {
$('#display').html(data);
listen_for_message();
}
error: function() {
setTimeOut("listen_for_message()",2000); // if error then call the function after 2 sec
}
});
return;
}
긴 폴링을 시작하는 코드를 게시 할 수 있습니까? – jabclab
이 (가) 질문에 포함 된 코드를 편집했습니다. –