window.parent.postMessage 解决iframe父子页面域名不一样出现的跨域问题
2024-10-20 08:41:18
window.parent.postMessage 解决iframe父子页面域名不一样出现的跨域问题
内嵌 iframe
页面,一般使用 window.parent
或 window.top
来获取父页面的 window
对象
在子页面 想使用(或传递给)
父页面的参数,但是原因两个的域名不一样,所以会出现跨域问题。
解决办法
1、父页面监听message
,写法固定
//监听单个事件
window.addEventListener('message', function (msg) {
console.log(msg)
}) //监听多个事件,可以使用if来判断 msg里边的参数进行区分
2、子页面发送 message
消息,并附带参数
// window.parent 是 iframe 子页面获取父页面的 window 对象 // 后面的 * 号就是处理跨域问题的,任何域名都不会出现跨域问题
window.parent.postMessage("需要传递的参数", '*') // 也可以指定传送域名地址,这个域名不会出现跨域问题,写父页面(接收)域名地址
window.parent.postMessage("需要传递的参数", 'http://0.0.0.0:8080')
// 传递的参数可以是数组,对象,字符串等
最新文章
- iOS网络4——Reachability检测网络状态
- Composer根据Name显示与隐藏
- java11
- linux mysql
- TCP的流模式与UDP的报文模式对比
- SQL Server数据库学习笔记-设计表时应该考虑的因素
- Hadoop概念学习系列之谈谈RPC(三十三)
- Lucene分页-----SearcherAfter
- Ubuntu-Java-Scala-Spark-IEDA-configure
- Threejs 官网 - Three.js 的图形用户界面工具(GUI Tools with Three.js)
- 进一步解 apt-get 的几个命令
- Samba远程代码执行漏洞(CVE-2017-7494)本地复现
- php工具方法
- 关于a标签颜色的探索
- asp.net core 配置
- 如何用Netty实现一个轻量级的HTTP代理服务器
- css坑了我一下下之line-height
- 软件开发者路线图梗概&;书摘chapter6
- windos64位下python3.6安装pywin32的问题
- C 语言restrict 关键字的概念及使用例子