本地主机上的 Websockets 通过 https:// 问题

Posted

技术标签:

【中文标题】本地主机上的 Websockets 通过 https:// 问题【英文标题】:Websockets on localhost over https:// problems 【发布时间】:2016-01-29 08:35:50 【问题描述】:

我正在尝试编写一个服务,我的服务是一个WebsocketServer,是用nodejs 编写的,带有express 和ws 模块。此服务应与 node-webkit 一起安装在本地计算机上(在 localhost 上),以便与 https:// 中的网站进行通信以交换信息。我的问题是,我需要 localhost 的受信任证书(不可能),因为如果我使用自签名证书,所有浏览器都会发出警告。我知道我可以忽略该警告,但是将来应该分发该软件,并且我不想为将来的客户发出该警告。有没有解决这个问题的好方法?

【问题讨论】:

【参考方案1】:

使用以下选项之一解决此问题:

将您的客户端接口打包为browser extension

设置一个Message Queue,它将消息转换为您的节点服务器作为 Websocket 请求

使用带有free certificates 的 PAAS 提供商代理到您的域

参考文献

How do I use a self signed certificate for a HTTPS Node.js server?

Simulating GitHub OAuth2 Login for Tests with JUnit, Webdriver & Hoverfly

Apache configuration using Self Signed Certificate - YouTube

Amazon SES: Sendmail

SMTP Gateway Plugin for RabbitMQ

Sending RabbitMQ messages via websockets

【讨论】:

以上是关于本地主机上的 Websockets 通过 https:// 问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在实时服务器而不是本地主机上使用 Tornado 实现 WebSocket

apache websockets反向代理

无法访问本地主机上的 API 资源管理器

本地主机上的 Symfony 资产(Wamp)

phonegap 无法与本地主机上的 xampp 服务器连接

如何通过 websockets 在本地 RSK 节点上订阅“newBlockHeaders”?