我正在构建一个聊天应用程序,对于每个客户端连接,我需要使用socket.io为每个客户端实例设置一些属性.当我保存属性时,我使用:
client.set('name', name, function () {});
client.set('email', email, function () {});
....
它运行正常.
当我需要获取所有客户端属性时,我还没有找到比这更好的方法:
client.get("name",function(err,name) {
client.get("email",function(err,email) {
.......
}
}
我需要将所有“get”嵌套到异步获取数据;但如果我有10个属性,我需要嵌套所有10个项目吗?必须有更好的方法来做到这一点,任何人都可以帮助我吗?
最佳答案 我没有将属性附加到套接字.
io.sockets.on('connection', function(socket) {
var username = "xx";
var email = "xx";
socket.on('doX', function(data) {
socket.emit('ackX', {username: username, email: email});
});
});
我不知道它是否是最佳解决方案,但我见过很多这样的例子.
编辑:socket.io – getting more than one field for a socket?
正确答案可能符合您的需求