首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在本机客户端应用程序和网页之间建立本地连接的最佳方式是什么

在本机客户端应用程序和网页之间建立本地连接的最佳方式是什么
EN

Stack Overflow用户
提问于 2019-10-23 22:09:00
回答 1查看 213关注 0票数 0

我有一个USB设备,上面有一些按钮,通过一个专有的HID控制接口与主机(Windows和Mac)通信。在主机上,我有一个本机应用程序与设备通信(例如,接收按钮按下事件,或配置设备)。

现在我正在寻找一种合适的方式来处理按钮事件或设备配置在Javascript的网站上运行在Chrome和理想情况下也在Firefox (以及在其他浏览器中有很好的)。因此,我需要在浏览器中运行的Javascript和在客户机上运行的本机应用程序之间建立连接。

我的第一个方法是通过本地消息使用Chrome扩展。我想这已经足够了,但是可能会有一些缺点。需要安装和维护两个组件(扩展和本地消息主机),它将仅限于Chrome和Firefox (稍作修改),以及未来基于Chromium的Edge。此外,虽然我确信Chrome扩展能够与我的本机应用程序通信,但我不太确定任何网页如何与该扩展进行通信,而不会引发一些需要注意的安全问题。

所以我在考虑通过WebSockets进行连接。本地客户端应用程序可以运行WebSocket服务器,并且网页可以连接到本地主机。例如,我曾看到Enpass做过类似的事情。但是如果网页是https呢?这不需要在本地主机上安装证书吗?这有可能吗?那么来自LetsEncrypt的concerns呢?

我知道有几个针对这些问题的堆栈溢出问题,但我还没有找到令人满意的答案。

EN

回答 1

Stack Overflow用户

发布于 2019-10-23 23:24:12

我过去使用过websocket方法。您可以做的是在后台脚本中有一个Websocket连接,并使用从内容脚本到后台脚本的message passing将消息发送到Websocket。这样一来,https就不是问题了(我也不确定这是不是一个问题)。

我不太确定任何网页如何在不引起一些需要注意的安全问题的情况下与扩展进行通信。

我个人从来没有使用过原生消息传递,但我相信如果你开始使用它并提出具体的问题,所有的问题都可以解决。

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

https://stackoverflow.com/questions/58524764

复制
相关文章

相似问题

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