Error invoking remote method ‘ELECTRON_GUEST_VIEW_MANAGER_CALL‘: Error: (-3) loading

最近在使用electron做一款公司的应用,使用的electron版本是8.5.5,发现控制台偶尔会出现这个报错:

Error: Error invoking remote method ‘ELECTRON_GUEST_VIEW_MANAGER_CALL’: Error: (-3) loading ‘http://www.xxxx’

debug了一下发现是在执行webview.reloadIgnoringCache()时引起的,上外网查了一下也有开发者出现了这个报错,大部分都是跟webview有关,动态修改webview.src好像也会报这个错,最后在https://github.com/electron/electron/issues/25421
看到一个答案:
截取自github
这个答主说把app.allowRendererProcessReuse设为false即可,
但是我试了一下,在background.js中设置app.allowRendererProcessReuse = false并没有效果
于是查了一下app.allowRendererProcessReuse的文档
大概翻译一下第一句:“一个布尔值,当为true时将禁用Electron为确保渲染进程在每次重定向时重新启动而设置的重写。此属性的当前默认值为true”

这个属性在electron9.0及之后的版本是true,在9.0之前的版本是false,我用的electron版本是8.5.5,原本就是false,于是我尝试把它设为true

app.allowRendererProcessReuse = true

然后再把webview.reloadIgnoringCache()换成webview.reload()就再也没有出现过这个错误了!

参考链接:
https://github.com/electron/electron/issues/24171
https://github.com/electron/electron/issues/25421

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值