election嵌套了一个web项目通信为什么会中断?

election嵌套了一个web项目,需要接受electron的一些数据到web端,electron代码使用ipcMain发送消息,web项目里用window?.QbPortApi?.onReceiveData('asynchronous-message'去接收消息,一般来说24小时内接收数据没有问题,但是有的电脑24小时后web端接收不到electron发来的消息,重新刷新以后就又能接收了,但是为什么会中断,并且要如何修改,求大佬告知

electron是main代码如下

electron的进程js代码如下

web端接收代码如下

阅读 895
2 个回答

猜测是浏览器自带的省电机制,超过一段时间没操作就被待机了。具体怎么修不知道,可以按这个思路搜搜看。

另外如果你的业务不需要实时更新 UI,可以把拉取数据放到 node.js 层,然后 web 层在激活或者获取焦点后,从 node.js 层获取最新数据。这样比较不容易出问题。

搞个心跳机制. 每过59秒就发一个ping到服务端, 服务端接受到ping后发送一个pong给你.保证链接一直存在.然后,就是如果没接到.就重新发送,如果连续三次都接不到.则重新链接.

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