2017-12-18 16 views
0

사용자가 URL을 입력하고 iframe에서 탐색 할 수 있도록 허용하려고합니다. 확인 버튼을 클릭하면 iframe에서 찾아보기 URL이 표시됩니다.GWT "http : // localhost"원본 프레임이 교차 원점 프레임에 액세스하지 못하도록 차단했습니다.

IFrameElement frame = IFrameElement.as(DOM.createIFrame()); 
frame.setSrc("http://www.example.com"); //set the url of user enter 
VerticalPanel ver = new VerticalPanel(); 
ver.getElement().appendChild(frame); 

// After they click the confirm button, get the url from iframe 
Window.alert(frame.getContentDocument().getURL()); 

하지만 iframe을에서 URL을 얻을 후 나는 오류가 발생했습니다 예외

: com.google.gwt.event.shared.UmbrellaException : 잡은 예외 : (오류 SecurityError가) : 프레임을 차단 원점은 " http://localhost"은 교차 원점 프레임에 액세스하지 못합니다.

답변

2

간단히 말해서 : 이렇게해서는 안되며 이렇게 할 수 없습니다. 먼저


:

일부 페이지 '저자는 단순히 자신의 페이지를 보자하지 않으려는 프레임에 표시 할. 예를 들어 페이스 북을 시도, 당신은 얻을 것이다 : 그것은 '부정'에 'X 프레임 - 옵션'을 설정하기 때문에

는 프레임에 'https://www.facebook.com/'을 표시하지 않았다.

하나는 페이지가 프레임에있는 및 경우 '돌파'(스크립트 포함) 확인하고 주 창을 취할 수 http://www.interia.pl/은 예입니다.

따라서 프레임에 표시 할 수없는 페이지가 있습니다.


둘째 :

에 대한 Same Origin Policy (SOP) 읽기 :

는 간단히 말해서, 기본 규정은 웹 페이지에서 실행되는 자바 스크립트 코드는 모든 리소스가 같은에서 발생하지와 상호 작용하지 않을 수 상태 웹 사이트. 이 보안 정책이 존재하는 이유는 악의적 인 웹 코더가 웹 사용자의 정보를 훔치거나 개인 정보를 손상시키는 페이지를 만들지 않도록하기 위해서입니다. 매우 필요한 동안,이 정책은 또한 웹 개발자의 삶을 어렵게 만드는 부작용을 가지고 있습니다.