2016-07-04 2 views
3

내 고객의 웹 사이트에있는 iframe에있는 간단한 퀴즈가 있습니다. 불행히도 퀴즈는 다른 서버에서 내 고객 사이트에 호스팅됩니다. 클라이언트는 사용자가 양식을 제출 한 후 iframe의 내용을 60 초 동안 새로 고치기를 원하지만, 퀴즈를 새로 고치려고 할 때마다 브라우저가 보안상의 이유로 차단합니다. 다른 도메인에 있습니다.다른 서버에서 호스팅 할 때 iframe 새로 고침

부모 창 대상을 변경하려고하지 않고 iframe 자체를 다시로드하므로 보안에 문제가 없으므로 ....... 시도했지만 iframe.contentWindow.history.back(); 시도했지만 여전히 동일한 보안 오류가 발생합니다.

Uncaught SecurityError: Blocked a frame with origin " http://www.ourserver.com " from accessing a frame with origin " http://www.clientserver.com ". Protocols, domains, and ports must match.

어떻게 새로 고치려면 iframe을 사용할 수 있습니까? 이것이 가능한가? 아니면 브라우저가 iframe을 상위 페이지가 소유하고 있다고 생각하니 새로 고칠 수 없습니까? 감사.

답변

0

메시지 게시를 사용하여 해결 방법 만 수행 할 수 있습니다. 직접 조작은 모든 브라우저에서 좋은 이유로 차단됩니다. 메인 페이지에서

:에서

var frame = document.getElementById('your-frame-id'); 

frame.contentWindow.postMessage("reload please, thank you", '*'); 

당신 (메인 페이지에 포함) :

관련 문제