【发布时间】:2013-10-19 18:08:43
【问题描述】:
我有以下操作使用 node_redis 创建用户:
server.post('/create_user', function(req, res, next) { 控制台.log(req.body); var body = req.body; client.hincrby('users', 'count', 1, function(err, id) { client.hmset('用户:'+id, '用户名',body.username, '密码', body.password, '电子邮件',body.email,函数(错误,写){ client.hmget('user:'+id, 'username', 'email', function(err, read) { res.send({id: id, username: read[0], email: read[1]}); }); }); }); })我想在这里阅读有关 Deferrable 和 Promises 的内容:http://blog.jcoglan.com/2011/03/11/promises-are-the-monad-of-asynchronous-programming/
如何使用 Deferables 和 Promises 重写此代码,从而实现更清晰的异常处理以及更好的流程维护?
动作基本上是:
- 增加计数器以获取 ID
- 使用 ID 设置用户的 Redis 哈希
- 从 Redis 返回创建的用户
【问题讨论】:
标签: javascript node.js redis promise