HarmonyOS webview与内部iframe通信问题?

应用侧使用web组件嵌入了一个网页,网页内由包含了一个iframe的h5页面。iframe的h5有跳转,web组件可以通过onLoadIntercept拦截到,没有问题。但是使用runJavaScript通信时,只有web组件嵌入的页面能通信到,iframe要如何处理,也能同步通信呢?

阅读 468
1 个回答

不支持iframe直接和应用侧通信,参考以下方案:

1、如果是同源域名,主页面获取到以后存入window对象,添加到window对象属性里去,传递给iframe。

2、如果是同源域名,主页面获取到以后存入localStorge,iframe去获取。

3、不同源域名,前端页面接收HarmonyOS端发送的消息,并通过window.postMessage方法将消息传递给iframe中的页面。在iframe中的页面接收到消息后,通过window.parent.postMessage方法将消息传递给宿主页面。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进