Nodejs Redis HSET& HGET插入到数据集错误

时间:2015-10-19 14:57:54

标签: node.js redis hashset

我正在尝试使用HSET作为首选选项插入redis中的帖子注释,但是收到错误。 以下是代码:

 var commmentData ={
          id : id,
          comment : req.body.comment,
          postId : req.body.postId,
          userId : req.body.userId
        }
   redisClient.hset('comment', commmentData, function(err, reply) {
                      if (err) throw err;
                      console.log("Reply : "+ reply);
                      res.json(errorResponse.res.SaveSuccess);      
                  });

我仍然在HMSET或HSET之间一无所知,应该使用哪一个。

1 个答案:

答案 0 :(得分:0)

Redis将所有内容存储为字符串(毕竟协议是基于文本的)。

如果要在Redis中存储对象,请确保在检索之前对其进行序列化(JSON.stringify()),然后再进行反序列化(JSON.parse())。

尝试:

 var commmentData ={
      id : id,
      comment : req.body.comment,
      postId : req.body.postId,
      userId : req.body.userId
 }

 redisClient.hset('comment', id, JSON.stringify(commmentData), function(err, reply) {
     if (err) throw err;

     console.log("Reply : "+ reply);     
 });