因为nodejs中的许多操作都是异步的,所以有前后依赖关系的异步操作,后执行的操作必须写到回调函数里面。
如对redis的操作,设置一个key,然后获取设置key的值,就属于有前后依赖关系的异步操作,必须按下面的写法来写:
// demo-redis.js
var redis = require('redis');
var client = redis.createClient(6379);
client.set('key', 'val', function(err, reply) {
if (err) {
console.log(err);
return;
}
client.get('key', function(err, reply) {
if (err) {
console.log(err);
return;
}
console.log(reply);
client.quit();
});
});
当操作更多的时候,这样的代码格式,看起来会相当头疼。。。
如果没有安装redis扩展,先用以下命令安装:
npm install hiredis redis