讓我們看看下面修改後的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);
});