webapp 无法通过移动网络连接

webapp wont connect over mobile networks

我已经设置了一个 webapp 来使用 websockets。

此网络应用在 local/wired 网络上运行良好。

我意识到(也许我错了)由于 ISP 代理,websockets 无法在移动网络 3G/4G 上工作。但后来我看到安全连接通过移动网络代理 (https://github.com/websockets/ws/issues/257)。

所以我使用 openssl 创建了一个简单的自签名证书。

最后,我的应用程序通过 https 运行以托管 WSS 协议。所以现在我尝试使用 4G 连接我的 phone,但页面无法加载。但它在 WIFI 连接上完美运行,也适用于我的台式电脑。

https://ciroreed.net:8080/

我可以提供其他有用的信息吗?

编辑

问题是移动网络有时无法加载 ws:// 协议。

我们通过设置 https 服务器来解决这个问题,并且 ofc 使用 wss 协议 also.this 套接字包 https://www.npmjs.com/package/ws

确保 websocket 在这里工作是我的建议:

  • 使用 wss,而不是 ws
  • 使用有效的签名证书
  • 用 ssllabs.com 检查你的 wss 端点(尤其是缺少中间证书,这是最常见的错误)