Могут ли два окна (разные домены) передавать сообщение? - PullRequest
0 голосов
/ 27 сентября 2019

У меня есть приложение, которое открывает окно из другого домена.

Веб-сайт: https://asite.com вызывает следующее:

window.open('http://somesite-s3-website.us-east-2.amazonaws.com',
      '_blank',
      'toolbar=no, menubar=no,scrollbars=no,resizable=no,location=no,directories=no,status=no,height=500,width=500'
    );

Другие пользователи окна postMessage отвечают:

document.addEventListener('DOMContentLoaded', function(event) {
            console.log('loaded', event);

            const xhr = new XMLHttpRequest();

            xhr.open('GET', 'http://192.168.101.1');

            xhr.onload = function () {
                const success = xhr.status === 200;
                console.log('success', success, xhr.response);
                window.top.postMessage(success, '*');
            };

            xhr.onerror = function () {
                console.log('failure');
                window.top.postMessage(false, '*');
            };

            xhr.send();

        });

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

window.addEventListener('message',function (event) {
      console.log('received response:  ', event.data);
    },false );

Сообщение никогда не принимается.

...