首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在嵌入式浏览器和webside之间进行双向通信

问如何在嵌入式浏览器和webside之间进行双向通信
EN

Stack Overflow用户
提问于 2019-09-23 16:14:18
回答 2查看 220关注 0票数 0

我有一个用于windows的C++项目,使用MiniBlink作为嵌入式浏览器。(MiniBlink是一个较小的闪烁,接近铬)。我使用这个嵌入式浏览器通过Quasar.js (vue.js的包装器)来显示响应性和美观的对话框。

问题:大多数情况下,浏览器只是被动的后端。在我的例子中,后端(带有嵌入式浏览器的项目)和前端(对话框)都是活动的,因此我需要一些交流。目前,我使用本地服务器来捕获从前端到后端的HTTP发送。

但是,有没有一种方法可以从后台到前端进行通信呢?目前,我只能考虑捕获cookie或在JS中使用永久循环来发送http查询,以检查可能的响应。

难道没有其他方法可以将信息发送到后端吗?所有东西都是本地的,我不需要也不想把它发送到网络中。

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-10 14:37:25

正如CertainPerformance作为评论添加的那样,WebSockets可能是最好的选择。如果不喜欢实现websocket服务器,因为http服务器已经在运行,那么长轮询请求可能是模拟此行为的最佳解决方案。

长轮询:客户端发送一个请求,该请求尽可能长时间地保持开放。如果服务器需要通信,它可以使用open请求通过响应发送自己的“请求”。这有点老生常谈,但本质上是websockets背后的想法。

Mozilla有一篇很好的文章可以帮助你使用websockets:https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_servers

如果你(像我一样)使用vuejs或quasar,你可能想看看vue-native-websocket。https://github.com/nathantsoi/vue-native-websocket

祝好运

票数 0
EN

Stack Overflow用户

发布于 2019-09-23 16:35:05

想法1:使用本地临时文件在一边保存,在另一边读取(也可以双向使用)

想法2(类似于问题作者的解决方案):具有双向通信的本地服务器(GET/POST请求进入一侧,text/json相反)

想法3:使用启动参数将数据直接传递到链接中例如:不使用browserprocess.exe file.html,而使用browserprocess.exe file.html#showsomething

也有其他的类似捕获的方法,例如:从另一方正在运行的任务中检查某个二进制名的进程的窗口标题;我们没有得到关于你的背景的足够的信息,因为你可以在同一进程或其他进程中使用它,如果是同一进程,你也可以直接在小程序代码中直接使用变量,并在遇到if语句时执行操作

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58058207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档