首页 > 解决方案 > 使用 Node.JS 制作的 Socket.IO 聊天示例在“传输模式”=websocket 下无法在 Azure 上运行

问题描述

以下问题:我有 Azure 免费层并创建了一个基于 Node.JS 12 LTS 运行时的 Web 应用程序。Web 应用程序源代码是 Socket.IO 聊天示例,可在此处找到。

聊天示例在我的本地机器上完美运行。-> Socket.IO 使用transport=websocket.

我通过 Visual Studio Code 将相同的源代码部署到 Azure。我在 General settings -> Web sockets: On 下进行了配置。

乍一看,聊天示例有效。但是当我在 Chrome 中切换到开发控制台时,我收到以下消息:

socket.io-1.2.0.js:2 WebSocket 连接到 'wss://*.azurewebsites.net/socket.io/?EIO=3&transport=websocket&sid=tWzTFtk3ABb3jeCWAAAE' 失败:WebSocket 握手期间出错:意外响应代码:503

我在 WebSockets Connection Limits 下找到了适合我的错误消息的内容。但是我测试了少于 5 个客户的聊天示例。:-/ 我还开始了一个远程调试阶段,在那里我检查了 Socket.IO 实例,并且在那里连接到服务器的客户端总是少于 5 个。

我想要什么:transport=websocket在 Azure 中使用和运行的 Socket.IO 通信(在免费层下)。

标签: node.jsazuresocket.io

解决方案


推荐阅读