让我们看看下面修改后的Restify示例,它现在包含了节点7/8的异步/等待支持。使节点7异步/等待来控制器控制器
我对express/restify /等的正确实现有一点担忧。我担心的是,在事件循环中承诺的时间比需要的时间更长......我知道这不完全是承诺,但是我应该关心这种实现吗?我还没有注意到任何问题。
'use strict';
const restify = require('restify');
const User = require('./models/User');
const server = restify.createServer({
name: 'myapp',
version: '1.0.0'
});
server.use(restify.acceptParser(server.acceptable));
server.use(restify.queryParser());
server.use(restify.bodyParser());
server.get('/echo/:name', async function (req, res, next) {
try {
const user = await User.findOne({
name: req.params.name;
});
res.send(user.get({plain: true}));
} catch (error) {
console.error(error);
res.send(500);
}
return next();
});
server.listen(8080, function() {
console.log('%s listening at %s', server.name, server.url);
});