【问题标题】:How do i make socket.io send emit message to only one client?我如何让 socket.io 只向一个客户端发送发射消息?
【发布时间】:2020-07-21 19:30:23
【问题描述】:

我一直在开发一款游戏,并且正在将套接字用于一些简单的后端内容。我注意到的一个问题是,当玩家死亡时,我会发出一个请求重置游戏的套接字。问题是,这会发送给每个人,所以当一个人死亡时,每个人都会被发送回主屏幕。

我怎样才能使(io.emit - 服务器)只影响(socket.on - 客户端)?

当我意识到这一点时,我的心脏停止了跳动,我已经走了这么远,我不敢相信我没有想到这一点!

【问题讨论】:

标签: javascript node.js sockets socket.io


【解决方案1】:

我猜其中一位 cmets 会引导您找到一些可能的答案。但以防万一苦苦挣扎的编码人员遇到同样的问题,这就是我所做的解决它的方法。

server.js

io.on('connection', function(socket) {
    io.to(socket.id).emit('private', 'you're secret code is ' + code);
});

client.js

socket.on('private', function(msg) {
    alert(msg);
});

https://socket.io/docs/emit-cheatsheet/ 在很小的空间里有一堆有用的信息。如果您想了解更多的解决方案,还有另一个问题的链接:

Send message to specific client with socket.io and node.js

【讨论】:

    猜你喜欢
    • 2021-06-21
    • 2012-05-24
    • 2015-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-09
    • 2015-04-05
    • 2019-08-04
    相关资源
    最近更新 更多