关于一个路由中return了promise的作用

来源:10-12 开发路由

99102837imooc

2021-09-28

// /api/blog/list
blogRoutes.get(’/list’, async (req, res) => {
// console.log(req.route); //这里就不是undefined
let author = req.query.author || ''
const keyword = req.query.keyword || ''
if (req.query.isadmin) {
// 管理员界面
if (req.session.username == null) {
// 未登录
res.json(new ErrorModel(‘未登录’))
return
}
// 强制查询自己的博客
author = req.session.username
}

return getList(author, keyword).then(listData => {
res.json(new SuccessModel(listData))
})

})

老师我想请问一下最后一句加粗这里 为什么要return一个promise实例,我不加好像也是可以访问具有着同样的效果,难道这个return是用来阻止代码向下执行还是什么作用呢?
学生愚钝

写回答

1回答

双越

2021-09-29

好问题。

从你给出的代码看来,return  确实没啥作用,去掉也可以

这里是路由处理,最关键的是 res.json(...) 返回内容。

0
0

Node.js+Express+Koa2+Nest.js 开发服务端

从入门到实战,一站式掌握 Node.js+Express+Koa2

4051 学习 · 2006 问题

查看课程