html - 桌面应用程序和 Web 前端之间的通信

标签 html architecture go websocket

我的项目可以分为 3 个组件:桌面应用程序、服务器后端、服务器前端。我正在使用 websockets 应用程序后端和后端前端通信。前端是单页应用程序。整体看起来像这样:

application-backend and backend-frontend communication

我需要实现前端和应用程序之间的通信(上图中的虚线箭头)。我可以使用后端服务器作为代理,但在前端和应用程序之间进行直接通信会更有用,这样就不会浪费后端资源。

有什么方法可以在本地应用程序和 Web 前端之间建立直接连接?

PS:我将 Go 用于后端和应用程序,JavaScript 用于前端,WebSockets 用于通信,但欢迎回答一般架构问题。

最佳答案

您是否尝试从您的桌面应用程序连接到 JavaScript 前端?如果是这样,我可以想到以下方案

  1. WebRTC。它受 Chrome(和 Opera)和 Firefox 支持。
  2. Chrome native 消息传递,这显然只适用于 chrome,从您的桌面应用程序的标准输入发送/接收信息。

总的来说,我认为 WebRTC 可能是更好的解决方案。不过,这两种解决方案都需要您在现代浏览器 Chrome/Firefox 中运行您的 Web 前端。

如果你必须处理 IE,我只能想到让你的桌面应用程序运行本地 Web 服务器,并让你的 Web 应用程序轮询/发布到它。即使那样,您也必须解决跨域问题,并且您可能希望围绕它实现某种级别的安全性,因此它变得相当困惑。

关于html - 桌面应用程序和 Web 前端之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29847717/

相关文章:

go - Go语言保存Json数据

go - sqlx structscan 连接查询

html - 隐藏标签

html - 将 3 div - div 2 排列到左侧 - div 1 和 3 排列到右侧

jquery - 我需要在链接处于事件状态时编辑它的 css 属性(a :active) with jquery after they have been set by normal html css. 我该怎么做?

html - WordPress 生成的文件用 HTML 编辑

linux - PHP项目,linux配置

java - 这是状态机的用例吗?如果是这样,您建议使用哪个开源软件?

javascript - 使用手动硬编码模板/组件的可视化构建器

Go << 和 >> 运算符