2011-06-30 8 views
5

estoy usando el módulo de Node.js node_redis:¿Cómo se inserta una serie de mapas de hash en Redis? (Node.js)

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); 

Cuando hago set, me sale un error, ¿por qué?

{ 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 

Respuesta

10

El método set espera una cadena como segundo argumento.

Se podría stringify la variable de data, es decir

rclient.set("mykey", JSON.stringify(data)) 
4
  • Se podría codificar a JSON (JSON.stringify) y luego insertarlo en Redis. Para descodificar a continuación, utiliza JSON.parse
  • Redback tiene algunas abstracciones agradables en la parte superior de node_redis. Hash podría ser lo que buscas?
Cuestiones relacionadas