📅  最后修改于: 2023-12-03 15:27:49.591000             🧑  作者: Mango
在 Javascript 中,你可以使用 socket.io 库来构建实时应用,如聊天室、在线游戏等等。在多用户场景中,为了区分不同的客户端,我们需要获取客户端的唯一标识 ID,以及客户端套接字(socket)对象来实现与客户端的实时通信。
以下是获取客户端 ID、套接字、io 的代码实现:
const io = require('socket.io')();
io.on('connection', (socket) => {
console.log('a user connected', socket.id);
socket.on('disconnect', () => {
console.log('user disconnected');
});
});
在上述代码中,我们通过 socket.id
来获取客户端 ID,即在客户端连接时会打印出 a user connected
以及该客户端的唯一 ID。
const io = require('socket.io')();
io.on('connection', (socket) => {
socket.emit('news', { hello: 'world' });
socket.on('my other event', (data) => {
console.log(data);
});
});
在客户端连接成功后,可以使用 socket.emit
方法向客户端发送消息,使用 socket.on
方法接收客户端发送的消息,并在回调函数中执行相应操作。
const io = require('socket.io')();
io.on('connection', (socket) => {
console.log('a user connected', socket.id);
socket.on('disconnect', () => {
console.log('user disconnected');
});
});
io.listen(3000, () => {
console.log('listening on *:3000');
});
在上述代码中,我们使用 io.listen
方法来启动服务器,并在成功启动后打印出 listening on *:3000
。通过 io
对象可以访问服务器的配置参数、中间件、事件等等。
以上是获取客户端 ID、套接字、io 的代码实现,希望对你的实时应用开发有所帮助!