【发布时间】:2019-01-16 00:51:21
【问题描述】:
我现在想做的是当用户离开大厅时,我想发出离开大厅的用户名,然后在大厅聊天室中显示该信息。这是当前的发射:
$("#lobby-leave-btn").on('click', () => {
socket.emit('lobby-left', {
username: username
});
});
问题是每个人都可以在控制台中设置他们想要的任何用户名,即使我在服务器端检查该用户名是否存在于数据库中,他们也可以键入不在大厅中的现有用户用户名。
有没有办法在不传递用户名的情况下做到这一点?更安全的方式?我可以在服务器端获得socket.id,但我又无法通过套接字 id 获取用户信息。任何帮助表示赞赏。
【问题讨论】:
-
为什么不检查他们在尝试连接时输入的用户名?
-
连接哪里?
-
连接到套接字?