Gmail 채팅은 클라이언트 상호 작용없이 AJAX 요청을 어떻게 할 수 있습니까?

StackOverflow https://stackoverflow.com/questions/732705

  •  06-09-2019
  •  | 
  •  

문제

모든 HTTP 응답은 클라이언트가 AJAX를 사용하는 것조차 시작해야합니다. 그러나 Gmail의 채팅 기능은 편안한 컴퓨터 의자에 앉아 브라우저와 상호 작용하지 않는 경우에도 다른 사용자로부터 메시지를받을 수 있습니다. 그들은 어떻게 했습니까?

도움이 되었습니까?

해결책

이 기술은 "혜성"으로 알려져 있지만 "서버 푸시", "리버스 Ajax"등이라고도합니다.

서버에서 브라우저로 데이터를 푸시하여 HTTP 연결을 계속 유지하는 것입니다. 이에 대한 자세한 정보를 찾으십시오 위키 백과 기사 (영문판).

또한 여기에 있습니다 꽤 좋은 프레젠테이션 DWR의 Joe Walker와 함께 혜성에 대해 이야기합니다.

다른 팁

정당하게 지적했듯이, HTTP는 클라이언트가 데이터를 '당기'해야합니다. Gmail은 타이머를 사용하여 사용자가 무언가를 클릭하도록 요구하는 대신 HTTP 작동을 트리거하여 서버에서 데이터를 '당기기'할 수 있습니다. 따라서 자동 인 것처럼 보이지만 여전히 클라이언트가 시작되었습니다.

네 혜성이 맞습니다. Ryan Dewsbury의 Google 웹 툴킷 응용 프로그램 9 장에서 혜성 기반 인스턴트 메신저 응용 프로그램을 만드는 방법을 설명합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top