You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从WebView内的受控在线网页调用Electron进程函数?

Electron WebView 内在线网页调用渲染/主进程函数

我的Electron应用渲染进程中包含<webview>组件,主进程与渲染进程通过IPC通信,未使用remote模块且nodeIntegration=false。该<webview>加载的是我本人管控的在线网站,现需实现从该在线网页调用Electron渲染进程或主进程中的指定函数。

示例代码

在线HTML网页

<script>
var arg1 = ....getAsyncFrom...(); // 从网页异步获取数据
function callHandler(arg1, arg2...) {
 window.myElectronApp.callHandlerFromWeb(arg1, arg2);
}
</script>

Electron应用(渲染进程中)

let myWebViewControl = document.getElementById('myWebView');

// 出于安全考虑,显式指定允许调用的方法名"callHandlerFromWeb"
sampleCallBack.response("callHandlerFromWeb", (arg1, arg2..) => {
 callHandlerInsideElectron(arg1, arg2...);
});

function callHandlerInsideElectron(arg1, arg2) {
 console.log("从网页调用了处理函数:" + arg1 + arg2);
}

补充说明

  • 我并非询问如何从渲染进程调用主进程函数,而是要实现WebView内的在线网页调用Electron应用的带参函数。
  • Flutter WebView已支持该功能,这并非新需求,也不存在高危风险。

内容的提问来源于stack exchange,提问作者klados

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 15:55:22