我被告知在我的Heroku应用程序中使用Redis用于存储经过身份验证的用户,所以我决定今天跳进去.我想要做的是在Redis商店中存储用户的哈希,如下所示:
{
id:4532143215432,
username:'davejlong',
email:'dave@davejlong.com'
}
Run Code Online (Sandbox Code Playgroud)
然后我希望能够通过用户名或ID进行搜索.这有可能与Redis不知怎的?
我正在使用node.js redis模块,该模块支持任何redis命令https://github.com/mranney/node_redis
@orangeoctopus usecae 中几乎没有问题。
redis 127.0.0.1:6379> HMSET id:4532143215432 用户名 davejlong emaildave@davejlong.com 确定 redis 127.0.0.1:6379> HMSET 用户:davejlong id 4532143215432 电子邮件 dave@davejlong.com 确定
这会造成重复,考虑添加新值以及删除和更新。
所以我更喜欢这个
SET user:davejlong 1
HMSET user:1 username davejlong email dave@davejlong.com
Run Code Online (Sandbox Code Playgroud)
1) 如果是用户名
redis.get('user:davejlong',function(err,id){
console.log('User Id of @davejlong: ' + id);
redis.hgetall('user:'+id,function(err,user){
console.log('User Data: ' + user);
})
})
Run Code Online (Sandbox Code Playgroud)
2) 如果是身份证
redis.hgetall('user:1',function(err,user){
console.log('User Data: ' + user);
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4925 次 |
| 最近记录: |