2010-05-04 3 views
0

채팅 스크립트 용으로 긴 폴링 iframe 솔루션을 사용하고 있습니다. 불행히도 이렇게하려면 iframe이 하위 도메인 호출이기 때문에 iframe 및 주 문서에 document.domain = 'yourdomain.com'을 설정해야합니다.document.domain을 설정하면 모든 팝업 및 iframe에도 설정해야하는 이유는 무엇입니까?

큰 문제는 ... 이제 팝업 및 iframe을 사용하는 다른 모든 스크립트가 손상된 것입니다. 그들은 이제 나도 그들에게 document.domain을 넣도록 요구한다. 문제를 해결하지만 이상적인 해결책은 아닙니다. 이 문제를 해결할 다른 방법이 있습니까?

답변

1

JavaScript는 보안 문제로 인해 도메인 간 제한이 있습니다. 이상적인/간단한 해결책은 사실 당신이 제안하는 것처럼 document.domain을 정의하는 것입니다.

JSONP 또는 iFrame 프록시과 같은 다른 대체 솔루션이 있습니다. 여기에 자세한 정보 : iFrame Cross domain JavaScript calls (해당 페이지의 두 번째 링크가 작동하지 않지만 여기에 좋은 리소스 iFrame proxying jQuery).

희망이 도움이됩니다.

관련 문제