【发布时间】:2015-08-07 22:58:24
【问题描述】:
我可以在 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
});
我错过了什么?非常感谢!
【问题讨论】:
-
您是否尝试在两个文件之间使用相同的
client实例?在您从另一个文件调用get()之前,set()可能还没有完成? -
@mscdex 我如何使用另一个文件中的同一个客户端?
-
在单独的文件中创建客户端,并将其导出为模块。然后在
store.js和somewhere_else.js中需要这个文件,并将它用于这两个操作。但请确保您仅在set完成后才调用get。
标签: javascript node.js redis node-redis