Я запускаю простое веб-приложение, поддерживаемое node.js, и пытаюсь использовать redis для хранения некоторых пар ключей Json, и он сохраняет данные в redis, когда я проверяю это на " redis-cli"консоль. Но когда я пытаюсь извлечь данные, он всегда возвращает ложное событие без ошибок.
Все, что я делаю, это запускаю «индекс узла. js» в командной строке, и вот первые несколько строк моего индекса. 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", он возвращает ложь вместо данных, которые я хранил в кэше redis.
Когда я запускаю
HGET 87 bdre2eb7-38b3-11e9-b66 c -0af14c44c62s
на консоли redis-cli, после чего я вижу данные по этому ключу