从 NodeJS 将数组插入 redis

Insert array into redis from NodeJS

我有一个数组,我用这样的 for 填充它:

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 密钥下,但 replyundefined

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

我也尝试过 rpush,但没有成功。
可能是什么问题?

您可以在此处查看哪些类型与 Redis 值兼容 data-types-intro.

如果您需要在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)