Как проверить открыто окно через window.open() или нет?

У меня есть два localhost.

http://localhost:8110 [1]
http://localhost:6040 [2]

[1] открывает окно [2]

window.open(`http://localhost:8110`,`test`,...)

окно открывается и устанавливается соединение....

Но мне сейчас потребовалось проверить на [2]

Было окно вызванно window.open() или нет.

Я могу сделать проверку window.opener. Существует или нет.

Но проблема в том, что если я хочу его проверить у меня появляется ошибка.

Uncaught DOMException: Blocked a frame with origin "http://localhost:8110" from accessing a cross-origin frame.
    at console.log (<anonymous>)
    at http://localhost:8110/import:20:13

origin не могу проверить, потому что есть вариант, что он будет но окно инициализируется не window.open()

Есть ли какой нибудь параметр проверки ?

Дополнение:

Почему возникает ошибка Blocked a frame with origin.

1 - [1] В первом окне открывается второе.

 let newWindow =   window.open(`http://localhost:8110`,`test`,...)

Дождаться того, что бы оно открылось, я не могу. В интернете в примерах написанно.

newWindow.onload = () => {....}

Это не работает с кроссдоменным запросом. Или я что то не понимаю.

2 - Открывается окно [2]

В этом окне я вызываю метод

window.opener.postMessage('init', `[1]`)

Сообщение отсылается в родительское окно и дальше могу обратно отправить уже данные из родительского окна.

Но проверить сущетсвует или нет opener во втором окне я не могу.


Ответы (0 шт):