【发布时间】:2020-12-12 14:25:22
【问题描述】:
我正在运行一个 nodejs 应用程序,它在我第一次使用它时运行良好,但是当我刷新并输入新数据时,Node 崩溃并给了我这个。错误如下所示:
/www/wwwroot/domain.to/node_modules/ws/lib/websocket-server.js:267
throw new Error(
^
Error: server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration
at WebSocketServer.completeUpgrade (/www/wwwroot/domain.to/node_modules/ws/lib/websocket-server.js:267:13)
at WebSocketServer.handleUpgrade (/www/wwwroot/domain.to/node_modules/ws/lib/websocket-server.js:245:10)
at Server.upgrade (/www/wwwroot/tehran.us.to/node_modules/ws/lib/websocket-server.js:89:16)
at Server.emit (events.js:327:22)
at onParserExecuteCommon (_http_server.js:646:14)
at onParserExecute (_http_server.js:587:3)
服务器上的代码对于 express 如下所示:
const app = express();
const options = {
key: fs.readFileSync('./key.pem'),
cert: fs.readFileSync('./cert.pem')
};
const server = https.createServer(options, app)
server.listen(3000, function () {
console.log("Express server listening on port " + 3000);
});
我也在同一端点上使用 Websocket,代码如下所示:
const wss = new Websocket.Server({ server })
console.log(url)
wss.on('connection', ws => {
console.log('user is connected to the server #mainpage')
我不知道如何解决它,因为应用程序似乎没有为新的刷新创建应用程序的新实例。
我该如何处理这个问题并让我的应用持续运行?
【问题讨论】:
-
面临同样的问题,我正在使用 socket.io
-
任何解决方案?
-
同样的问题,其他人有这个吗?
标签: node.js express websocket node-modules