Вставить массив в Redis из NodeJS - PullRequest
0 голосов
/ 08 мая 2018

У меня есть массив, который я заполняю для как:

var obj = [];
for(i = 0; i < data.bids.length; i += 1) {
    obj.push(JSON.parse(data.bids[i][0]));
}

После этого я проверяю, содержит ли массив нужные значения (он содержит):

console.log("Array after the for: \n");
console.log(obj);

Я пытаюсь сохранить это под ключом redis, но reply равно undefined

client.set('order-book:buy:bitstamp', obj, function(err, reply) {
    console.log(reply);
});

Я тоже пытался с rpush, но не повезло.
В чем может быть проблема?

1 Ответ

0 голосов
/ 09 мая 2018

Здесь вы можете проверить, какие типы совместимы как значения redis типы данных-интро .

Если вам нужно сохранить массив объектов в Redis, единственный способ сделать это - использовать JSON.stringify(obj). Так что в вашем примере это будет выглядеть примерно так:

const redisValue = JSON.stringify(obj);
client.set('order-book:buy:bitstamp', redisValue, function(err, reply) {
    console.log(reply);
});

При чтении данных с Redis вы можете легко использовать JSON.parse(redisResponse).

...