我现在就是这样做的。但试图看看是否有正确的或其他的方法可以做到这一点。
async function getmanual_vars(req, res,ajax){
var return_data = {};
let db = await mongo_client.connect(mongo_url);
let db_data = await db.collection('data').find({ created_by_user_id: req.cookies.user_id}).toArray();
// more codes inside //
res.json({ success: true});
}
router.post('/manual_vars', check_auth,function(req, res, next) {
getmanual_vars(req, res,0);
});
你可以这样做:
async function getmanual_vars(req, res) {
try {
var return_data = {};
let db = await mongo_client.connect(mongo_url);
let db_data = await db.collection('data').find({
created_by_user_id: req.cookies.user_id
}).toArray();
// more codes inside //
res.json({ success: true});
} catch (error) {
res.status(500).json({ success: false, error: error });
}
}
router.post('/manual_vars', check_auth, getmanual_vars);
这应该可以捕获异步函数中可能出现的错误和异常以及状态500
.
因为这已经是一个接受的函数req
and res
,我们可以将函数本身传递给路由器,而不必围绕它创建一个包装器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)