0
我在下面的代碼中做了什麼錯誤? left_label
和right_label
變量似乎總是「真實的」,當我知道我在Redis中將它們設置爲某個字符串時。我假設這是因爲client.get
函數成功並返回true,但是如何獲取它以返回實際值?使用節點j從redis獲取值
var http = require('http');
var redis = require('redis');
var client = redis.createClient(6379, 127.0.0.1);
var server = http.createServer(function (request, response) {
var left_label = client.get('left', function(err, reply) {
console.log(reply);
return reply;
});
var right_label = client.get('right', function(err, reply) {
console.log(reply);
return reply;
});
response.writeHead(200, {"Content-Type": "text/html"});
var swig = require('swig');
var html = swig.renderFile('/var/www/nodejs/index.html', {
left: left_label,
right: right_label
});
response.end(html);
});
server.listen(8000);
console.log("Server running at http://127.0.0.1:8000/");
Redis的訪問是異步的,'reply'具有實際價值,但是'left_label'和''right_label不會有它 –