본문 바로가기
개발자의 정보/Web

javascript opener 사용권한이 없습니다.

by pastory 2020. 2. 1.

자바스크립트를 통해 opener에 접근하거나 생성한 창에 접근할 때에 사용권한 문제에 간혹 부딪히곤 합니다.

이럴 때에 체크해 보아야 할 것은

  • 도메인이 서로 다른 웹사이트일 경우
  • 윈도우가 생성된 이후 다른 도메인을 지나왔을 경우
  • http, https 와 같은 프로토콜이 다른 경우

이렇게 세가지 경우가 가장 많은 것 같습니다. 이 때 창을 close 하는 등의 controll을 하려 들면 사용권한이 없다는 메시지가 계속 나오게 되는데 모든걸 해결할 수는 없지만 간단한 문제는 해결 가능한 꼼수가 있습니다.

javascript 로는 접근이 안되지만 form 전송의 target 으로 지정하여 다른 페이지를 열 수 있다는 점입니다.

다른 창에서 close 명령을 내리려 할 경우 close 명령이 있는 빈 페이지를 만들고 target 으로 close 하고 싶은 창을 지정해 form 전송을 실행 시키는 방법입니다.

지극히 제한적이고 꼼수이지만 이 방법을 통해 해결할 수 있는 부분이 의외로 많으니 기억해 둔다면 도움이 될 듯 싶습니다.

댓글