我想在Redis中存储用户的哈希/ JSON数据,并希望在用户中添加用户哈希用户数据。
例如,users = {}
;
当用户 rahul 登录时,users
将成为。
users = {
rahul: {
username: 'rahul',
}
}
当用户 namita 登录时
users = {
rahul: {
username: 'rahul',
},
namita: {
username: 'namita',
}
}
在Redis中执行此操作的代码是什么?
如何初始化密钥users
并将 rahul 添加到其中?
在这个集合,hset等中,我需要使用哪个函数?
我将如何通过Redis检索users['rahul']
的数据?
答案 0 :(得分:22)
存储单个hash / json的最佳解决方案可能是使用hashes命令。我还有这个“dilemma”,并且several questions涉及数据结构,其中包含Redis中具有类似JSON的对象的用户。
修改强>
使用node_redis模块。它由专业人员主动维护,可能是Redis最常用的node.js驱动程序。首先,您应该使用SADD命令将新的JSON对象名称添加到集合中,以便跟踪“用户”包含的项目。然后使用HMSET存储“user:rahul”对象键值哈希值。例如:
// add first user
client.sadd("users", "user:rahul");
client.hmset("user:rahul", "username", "rahul", "foo", "bar");
// add second user
client.sadd("users", "user:namita");
client.hmset("user:namita", "username", "namita", "foo", "baz");
现在,您可以通过各种类型的redis hash命令访问您的用户,具体取决于您是否只想检索某些哈希值或整个单个用户对象。要获取所有用户,您可以使用SMEMBERS命令。尝试查看node_redis readme和examples,您应该在其中找到有关其API的更多信息。