WebSocket WS SSL

WebSocket WS SSL

我正在使用 Google 应用程序 Engine/Managed 虚拟机来开发一个使用网络套接字的 nodeJS 应用程序。

作为应用的一部分,前端需要使用Websockets连接 例如

connection = new WebSocket('wss://127.0.0.1:3001');

我正在努力解决的问题是如何确保 SSL 部分正常工作。 我当前启动 WebSocketServer 的代码是:

var WebSocketServer = require('ws').Server;

var wss = new WebSocketServer({port:3001});

但这只会创建一个标准服务器(即 ws://127.0.0.1:3001)。

我的问题是,使用 WebSocketServer,我该如何创建一个 WebSocketServer 以用于 SSL?

使用安全的 WebSockets 需要 SSL 证书,并且可以选择使用自签名证书。有一个 tutorial 可能对设置此设置有用。

由于 appspot.com 前端的端口转发问题,在托管 VM 上使用 WebSockets 可能会出现其他问题。有一个public issue which details this as well as another question on Stack Overflow。作为解决方法,您可能需要使用完整的 Compute Engine 实例而不是托管 VM。