我在 NodeJS 上创建了一个简单的 WebSocketServer,一切正常,但是当我连接超过 1 个客户端时,它无法正常工作。当我从客户端 2 发送内容时,只有客户端 1 收到消息。有没有办法识别不同的客户端并为每个客户端创建唯一的连接?
我的 Websocketserver 看起来像这样:
function startupTheWebSocketServer(app, config) {
var clients=[]
var WebSocketServer = require('websocket').server;
console.log(" * Web Socket server will be set up in a moment...")
var wsServer = new WebSocketServer({
httpServer: app,
});
var url = "ws://localhost:" + config.server_port
wsServer.on('request', function(request) {
var connection = request.accept();
clients.push(connection)
console.log(" * WebSocketServer-INFO: A client has connected.")
var infomsg_to_client = {
"WS-INFO": "Welcome. Send me any message you like"
}
connection.sendUTF(JSON.stringify(infomsg_to_client));
我尝试创建一个唯一的 id,但我不确定如何将它添加到每个客户端:
wsServer.getUniqueID = function () {
function s4() {
return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
}
return s4() + s4() + '-' + s4();
};