最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

用mongodb调用的Node.js表达无法完成执行

网站源码admin21浏览0评论

用mongodb调用的Node.js表达无法完成执行

用mongodb调用的Node.js表达无法完成执行

我在使用mongodb调用时有一个.post函数,类似这样:

router.post('/insert')=>{

-findOne
// Some code
// with error return redirect('/error')

-Count
// with error return redirect('/error')

-Insert
// with error return redirect('/error') 
// with normal execution return redirect('/save')
}

我的问题是,在此重排之后,此函数的执行未完成。因此,如果findOne失败后我正在检查,我不想进入Count或Insert

注意,我已经在使用return redirect()

回答如下:

[没有更多代码,很难说,但是我最好的猜测是您正在回调函数内部使用return redirect('/error')(例如,例如,如果您正在为数据库方法使用Promise,则提供给.then的回调) ,而不是退出整体功能,而是退出回调,然后继续执行路由处理程序。如果是这种情况,那么最好使用异步路由处理程序,这样您可以改为await您的数据库调用,如果出现问题,则可以return res.redirect,这将按您的预期进行]

发布评论

评论列表(0)

  1. 暂无评论