2016-08-22 3 views
0

Sup Dev 's.긴 폴링을 사용하는 동안 채팅 응용 프로그램 문제가 발생했습니다.

저는 현재 페이스 북과 같은 채팅 응용 프로그램을 사용하고 있지만 긴 폴링을 사용하고 있습니다. 매번 채팅 창이 열리면 긴 폴링 요청이 서버로 전송되고 요청 시간이 초과되거나 성공적으로 응답하면 다시 시작됩니다. 그러나 특정 친구에 대한 창 탭을 닫고 창 탭을 다시 열면 두 개의 긴 폴링 요청이 서버에서 새 메시지를 기다리고있을 때 응답합니다. 그래서 상대방으로부터 보내는 각 메시지에 대해 2 개의 메시지를 반환하고 2 개의 메시지가 표시됩니다. 내가 각 친구 채팅 창에 대해 더 이상 길게 폴링 요청을하지 않으려면 어떻게해야합니까? 채팅 창 닫기 버튼으로 첫 번째 긴 폴링 요청을 방해하는 함수를 바인딩 할 수 있습니까? 내 일을 끝내기위한 다른 방법은 없나요?

감사합니다.

+0

이 방법으로 문제가 해결되지는 않지만 일부 ID를 메시지에 바인딩하면 해당 ID가있는 메시지가 이미 존재하는지 확인하므로 동일한 메시지가 표시되지 않습니다. – Aleksandar

+0

큰 감사. 나는 그것을 시도 할 것이다. 누군가 다른 아이디어가 있다면. 나는 대답을 바랄 것이다. – chzn

답변

1

완벽하게 작동합니다. ...이를 사용하여

if(!$("#"+result.chatid).length) { //do things }

... 기존 메시지를 확인합니다.

관련 문제