我正在运行一个由node.js支持的简单web应用程序,我试图使用redis来存储一些键值对。我所做的就是在命令行上运行“node index.js”,下面是index.js的前几行:
var app = require('express').createServer();
var io = require('socket.io').listen(app);
var redis = require('redis');
var redis_client = redis.createClient();
redis_client.set("hello", "world");
console.log(redis_client.get("hello"));
然而,我得到的redis_client.get("hello")
而不是"world"
是false
。为什么不返回"world"
?
(And我正在运行redis-server)
奇怪的是,发布的示例代码here运行良好,并产生预期的输出。对于简单的set
和get
,我是否做错了什么?
5条答案
按热度按时间dauxcl2d1#
我敢打赌get是异步的,所以你可以通过回调来获取值。
g6ll5ycj2#
给你!对于ES6**
对于ES 5
lawou6xi3#
这可能会帮助那些讨厌使用回调的人:
只需在不使用外部库的情况下,通过执行以下操作来实现它:
bfnvny8b4#
现在,Redis使用promises API。
bzzcjhmw5#
有同样的问题,通过使用promisify解决了它。