如何在Redis中插入哈希映射数组? (Node.js的)

时间:2011-06-30 01:02:53

标签: javascript database node.js redis

我正在使用Node.js模块node_redis:

var data = [ {'name':'matt', 'id':'333' } , {'name':'Jessica','id':'492'} ] ;

//Initialize Redis
var redis = require('redis'),
rclient = redis.createClient(settings.redis.port, settings.redis.host,{pass:settings.redis.password});
rclient.auth(settings.redis.password, function(){});
rclient.on("error", function (err) {});


//OK, insert the data into redis
rclient.set("mykey", data); 

当我set时,我收到错误,为什么?

{ stack: [Getter/Setter],
  arguments: undefined,
  type: undefined,
  message: 'ERR wrong number of arguments for \'set\' command' }
Error: ERR wrong number of arguments for 'set' command

2 个答案:

答案 0 :(得分:10)

set方法需要一个字符串作为第二个参数。

您可以对data变量进行字符串化,即

rclient.set("mykey", JSON.stringify(data))

答案 1 :(得分:4)

  • 您可以将其编码为JSON(JSON.stringify),然后将其插入redis。要解码您,请使用JSON.parse
  • Redback在node_redis之上有一些很好的抽象。 Hash可能就是您要找的东西?