Доступ к родительскому документу из IFrame (тот же домен) дает ошибку - PullRequest
0 голосов
/ 13 мая 2019

Я пытаюсь получить доступ к документу родителя из iframe, используя window.parent.document, но получаю эту ошибку -

Uncaught DOMException: Blocked a frame with origin "https://abc.xyz.com" from accessing a cross-origin frame.

Но хост обоих родителей и iframe одинаковы.У обоих есть хост https://abc.xyz.com

. В iframe я перенаправляю его через несколько URL.Таким образом, он начинается с

https://abc.xyz.com, затем переходит к

https://www.facebook.com

, затем снова перенаправляется на https://abc.xyz.com

Я пытаюсь получить доступдокумент после этого перенаправления, но я получаю эту ошибку.Есть мысли о том, почему это могло произойти?Пожалуйста, помогите.

1 Ответ

0 голосов
/ 13 мая 2019

Вы можете использовать postMessage (Подробнее об этом здесь ).

В вашем iframe называйте это:

window.parent.postMessage({message: 'stuff you want to send'}, 'https://abc.xyz.com/');

В родительском окне вы можете прослушать событие сообщения следующим образом:

window.addEventListener('message', function(evt) {
   if(evt.origin == 'https://abc.xyz.com/')
       console.log('Data: ' + evt.data.message);
}, false);
...