解析Node.js中的Redis HGETALL对象

uz75evzq  于 12个月前  发布在  Redis
关注(0)|答案(2)|浏览(157)

我正在尝试解析Node.js中的HGETALL对象。
在Redis CLI中:

> HGETALL userList

字符串
返回

1) "19578616521094096601"
2) "User 1"
3) "1682930884780137383"
4) "User 2"


在节点中:

var redis = require('redis')
,   r = redis.createClient();

console.log(r.HGETALL('userList'));


返回

true


我想将userList对象解析为JSON或数组,但我似乎不知道如何从中提取数据。

dwthyt8l

dwthyt8l1#

RedisClient使用callback返回结果。
示例:

var redis = require('redis'),
    r = redis.createClient();

r.hgetall('userList', function(err, results) {
   if (err) {
       // do something like callback(err) or whatever
   } else {
      // do something with results
      console.log(results)
   }
});

字符串

tvokkenx

tvokkenx2#

直接从redis.io自己的Node.js guide

await client.hSet('user-session:123', {
    name: 'John',
    surname: 'Smith',
    company: 'Redis',
    age: 29
})

let userSession = await client.hGetAll('user-session:123');
console.log(JSON.stringify(userSession, null, 2));
/*
{
  "surname": "Smith",
  "name": "John",
  "company": "Redis",
  "age": "29"
}
 */

字符串
只要你有正确的集合名称/键,你的情况应该是简单的,你应该得到一个对象(如果有多个键值对。如果你在每个属性中存储一个JSON字符串,不要忘记在将它用作对象之前解析它!

相关问题