В своем веб-приложении я использовал iframe для загрузки экземпляра чата "RocketChat".Но когда я пытался войти в чат с помощью window.postMessage(), браузер выдает ошибку консоли.пожалуйста, найдите ниже снимок экрана.
iframe
window.postMessage()
Не удалось выполнить 'postMessage' для 'DOMWindow': указан целевой источник ('https://haulmatic.rocket.chat') не соответствует источнику окна получателя (' http://localhost:3030').
axios.post('https://myDomain.rocket.chat/api/v1/login', { username: '<myUserName>', password: '<myPassword>' }).then(function (response) { if (response.data.status === 'success') { res.set('Content-Type', 'text/html'); res.send(` <iframe id="iframe" width="400px" height="900px" src="https://myDomain.rocket.chat?origin=http://localhost:3030"></iframe> <script> window.parent.postMessage({ event: 'login-with-token', loginToken: '${ response.data.data.authToken }' }, 'https://myDomain.rocket.chat/'); // rocket.chat's URL 206.189.138.6:3000 </script> `); } }).catch(function() { res.sendStatus(401); });
Справка: документация по аутентификации в iframe в формате Rocket Chat