Надеюсь, это поможет вам как-то в вашем случае,
Я столкнулся с точно такой же проблемой и просто использовал localalstorage для обмена данными между родительским окном и iframe.
Итак, в родительском окне вы можете:
localStorage.setItem("url", myUrl);
И в коде, где источник iframe просто получает эти данные из localstorage:
localStorage.getItem('url');
сэкономил мне много времени.
Насколько я вижу, единственным условием является доступ к коду родительской страницы.
Надеюсь, это кому-нибудь поможет.