业务场景:
- A系统和B系统相互跨域,
- A系统开起B系统,B系统需要获取登录验证信息
- A,B系统都是通过token验证登录信息
举例说明:我在我本机8080和8081两个端口分别起了两个应用,8080端口的应用打开8081端口的应用,8081的页面被打开后发送消息给8080端口页面,8080页面收到消息后将token发给8081页面
8080页面代码:
let popup = window.open('http://localhost:8081/#/testIframe', 'blank_') // 打开8081端口的页面 获取新窗口对象
window.onload = function () {
window.addEventListener('message', onmessageBack)
}
function onmessageBack (event) {
if (event.origin === 'http://localhost:8081') { //
console.log('8080收到请求,即将发送token')
popup.postMessage('token is aaaaaa', 'http://localhost:8081') // 收到8080的请求后发送token非8080
}
}