Проблема с получением данных из Redis
Создаю API на Node.js и использую Redis для хранения данных. Настроил клиент Redis и могу получать значения по конкретным ключам без проблем.
Что нужно сделать
Нужно извлечь все ключи вместе с их значениями из базы данных Redis. Попробовал реализовать это таким способом:
server.get('/tasks', function (request, response) {
var taskList = [];
redisClient.keys('*', function (error, keyArray) {
if (error) return console.log(error);
if(keyArray){
for(var index=0; index<keyArray.length; index++){
redisClient.get(keyArray[index], function (err, result) {
if (err) return console.log(err);
var task = {};
task['taskId'] = keyArray[index];
task['content'] = result;
taskList.push(task);
});
}
console.log(taskList);
response.json({items: taskList});
}
});
});
Проблема
В ответе всегда получаю пустой массив. Подскажите, как правильно это реализовать в JavaScript? Может есть более эффективный способ получения всех данных из Redis?