使用redis和node.js问题-Redis_client.hget始终返回false

问题描述 投票:0回答:1

我正在运行一个由node.js支持的简单Web应用程序,并且我试图使用Redis存储一些密钥对Json对象,并且将数据存储到Redis中,因为我在“ redis-cli] >”控制台。但是,当我尝试获取数据时,它总是返回false事件,没有错误。

我要做的就是在命令行上运行“ node index.js”,这是我的index.js的前几行:

const getRedisClient = () => {
  client = redis.createClient(REDIS["PORT"], REDIS["HOST"]);
  client.on("error", function(err) {
    console.log("Redis Error " + err);
  });
  return client;
}

const getPostByLocalDbPath = (local_db_path, user_id) => {
  try {
    let client = getRedisClient();
    console.log("---- cache keys -----");
    console.log(user_id, local_db_path);
    let data = client.hget(user_id, local_db_path, function (err, obj) {
      if(err) {
        return null;
      }
      return obj;
    });
    console.log("--- cache data ---", data);
    return data;
  } catch (err) {
    console.log("--- cache get exception ---", err);
    return {};
  }
}

当我调用“ getPostByLocalDbPath”方法时,它返回false,而不是我存储在redis缓存中的数据。

我跑步时

HGET 87 bdre2eb7-38b3-11e9-b66c-0af14c44c62s

在redis-cli控制台上的命令,然后我可以根据此键查看数据

我正在运行一个由node.js支持的简单Web应用程序,并且我尝试使用redis存储一些密钥对Json对象,并且将数据存储到redis中,因为我在“ redis-cli”控制台上对此进行了验证。但是当我尝试...

node.js redis node-redis
1个回答
0
投票

您可以使用Promisify:

© www.soinside.com 2019 - 2024. All rights reserved.