2012-02-13 3 views
0

websocket을 사용할 수없는 경우 longpolling을 사용하고 싶습니다. 그러나 서버와 웹 사이트가 같은 도메인에 있지 않으면 어떻게 만드나요?다른 도메인의 긴 폴링을 사용하는 방법은 무엇입니까?

죄송합니다. 당신은 어떤 생각이 있다면, 나와 공유하십시오. 사전에

감사

+1

실패한 것을 시도해 보셨습니까? 도메인 간 장기 폴링은 도메인 간 일반 폴링 (요청 소요 시간 제외)과 동일하므로 동일한 솔루션 (CORS, JSONP 등)이 적용됩니다. – cheeken

+0

예, 시도했지만 xmlhttp 요청이 교차 도메인에서 작동하지 않습니다. '잡히지 않은 예외 : ReferenceError : 보안 위반' –

+2

실제로 도메인 전체에서 AJAX 요청을 수행 할 수 없습니다. 내가 언급 한 것과 같은 다른 접근법을 사용해야합니다. 제 요점은 문제가 긴 폴링에만 국한되지 않는다는 것입니다. http://stackoverflow.com/questions/3506208/jquery-ajax-cross-domain을 참조하십시오. – cheeken

답변

2

대니,

지금 (크로스 도메인 메시징 더 잘 지원 될 때까지) 동적에 스크립트 태그를 추가함으로써, 당신은 동적 스크립트 태그 롱 폴링 방법을 활용해야합니다 전통적인 Ajax 요청 (예 : document.createElement ("script")) 대신 dom을 사용합니다. 스크립트가 성공적으로로드되었을 때 실행되는 onreadystatechange 이벤트를 사용하여 페이지가로드되었는지 확인할 수 있습니다.

관련 문제