无法在Node.js中的Redis中检索值?

时间:2015-08-07 22:58:25

标签: javascript node.js redis node-redis

我可以在Redis中存储键/值,但我无法检索该值。

store.js

var client = redis.createClient();

token ='ghg782Nm';
webhook = 'http://test.com'; 

//store the key/value in Redis   
client.set(token, webhook, function(err, reply) {
        if (err) {
          console.log(err);
        }
});

//get the value 
client.get(token, function(err, value) {
  if (err) {
   console.log(err);
  }
console.log(value); //return 'http://test.com'

});

我在这里得到了正确的值,但是当我想从另一个文件(somewhere_else.js)获取它时,该值为null。

somewhere_else.js

var client = redis.createClient();

token ='ghg782Nm';

//get the value 
client.get(token, function(err, value) {
  if (err) {
   console.log(err);
  }
console.log(value); //Return null

});

我错过了什么?非常感谢!

2 个答案:

答案 0 :(得分:1)

我测试你的代码,但一切都好。首先运行score.js然后运行somewhere_else.js。 如果你得到null可能是get()在set()

之前运行

答案 1 :(得分:1)

您是否使用redis-cli检查了值是否位于redis中? 如果是,那么

Redis.select(0, d function(.......)

它会选择数据库0虽然默认值为零,但只是为了确保配置是否未被篡改。