Javascript 如何设置套接字io的最大客户端数?

Javascript 如何设置套接字io的最大客户端数?,javascript,html,socket.io,client-server,Javascript,Html,Socket.io,Client Server,我的服务器只允许两个客户端连接。如何设置socket.io的两个客户端上的最大客户端数? 这就是我的server.js的样子: var path = require('path'); var express = require('express'), app = express(), http = require('http'), socketIo = require('socket.io'); var server = http.createServer(app);

我的服务器只允许两个客户端连接。如何设置socket.io的两个客户端上的最大客户端数? 这就是我的server.js的样子:

var path = require('path');
var express = require('express'),
    app = express(),
    http = require('http'),
    socketIo = require('socket.io');

var server = http.createServer(app);
var io = socketIo.listen(server);
server.listen(9000);

app.get('/', function (req, res) {
    res.sendFile(path.join(__dirname + 'index.html'));


});
app.use(express.static(__dirname + '/'));

io.on('connection', function (socket) {


    socket.on('data', function (data) {


        socket.broadcast.emit('data', data)
    });

    socket.on('disconnect', function () {
console.log("disconnect")
    });

});


这是未经测试的,但您应该能够检查连接上的用户数,并在连接/断开连接时进行更改

以下是一个例子:

const connectedUsers = 0;
const maxUsers = 2;
io.on('connection', function (socket) {
    if(connectedUsers + 1 > maxUsers){ // check if the new connection will exceed the max connections allowed
       socket.disconnect(); // if so, disconnect the user and exit https://stackoverflow.com/a/5560187/11518920
       return;
    }
    connectedUsers++; // otherwise + 1 to the connectedUsers
    socket.on('data', function (data) {
       socket.broadcast.emit('data', data)
    });
   socket.on('disconnect', function () {
       connecteUsers--; // on a disconnected decrease the connectedUsers count
       console.log("disconnect")
    });
});

谢谢,有什么技巧可以向第三个用户显示他无法连接到服务器的警报吗?@GermanyDeutschland在调用断开连接功能之前,只需向该特定用户发送一条消息。是的,但是如何发送消息呢?