programing

IFRAME에서 현재 URL 가져 오기

nasanasas 2020. 9. 21. 07:48
반응형

IFRAME에서 현재 URL 가져 오기


iframe에서 현재 URL을 가져 오는 간단한 방법이 있습니까?

시청자는 여러 사이트를 통과합니다. 나는 자바 스크립트에서 무언가를 사용할 것이라고 생각합니다.


보안상의 이유로 iframe의 콘텐츠와 참조하는 자바 스크립트가 동일한 도메인에서 제공되는 동안에 만 URL을 가져올 수 있습니다. 그것이 사실이면 다음과 같은 것이 작동합니다.

document.getElementById("iframe_id").contentWindow.location.href

두 도메인이 일치하지 않으면 교차 사이트 참조 스크립팅 보안 제한이 발생합니다.

유사한 질문에 대한 답변 도 참조하십시오 .


iframe이 다른 도메인 (크로스 도메인)에서 가져온 경우 다른 답변이 도움이되지 않습니다. 다음을 사용하면됩니다.

var currentUrl = document.referrer;

그리고-여기에 기본 URL이 있습니다!


이것이 귀하의 경우에 똑같은 문제로 고통 받고 부모 창과 iframe간에 데이터를 공유하기 위해 localstorage를 사용하는 방법에 도움이되기를 바랍니다. 따라서 부모 창에서 다음을 수행 할 수 있습니다.

localStorage.setItem("url", myUrl);

그리고 iframe 소스가 로컬 스토리지에서이 데이터를 가져 오는 코드에서 :

localStorage.getItem('url');

많은 시간을 절약했습니다. 내가 볼 수있는 한 유일한 조건은 상위 페이지 코드에 대한 액세스입니다. 이것이 누군가를 도울 수 있기를 바랍니다.


iframe 컨텍스트에있는 경우

당신은 할 수 있습니다

const currentIframeHref = new URL(document.location.href);
const urlOrigin = currentIframeHref.origin;
const urlFilePath = decodeURIComponent(currentIframeHref.pathname);

부모 창 / 프레임에있는 경우 https://stackoverflow.com/a/938195/2305243 의 답변을 사용할 수 있습니다.

document.getElementById("iframe_id").contentWindow.location.href

참고 URL : https://stackoverflow.com/questions/938180/get-current-url-from-iframe

반응형