首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Node.js -返回res.status与res.status

Node.js -返回res.status与res.status
EN

Stack Overflow用户
提问于 2018-10-21 20:29:58
回答 2查看 6.8K关注 0票数 6

我很好奇返回一个回复和仅仅创建一个回复之间的区别。

我看到了大量使用return res.status(xxx).json(x)res.status(xxx).json(x)的代码示例。

有人能详细说明两者之间的区别吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-21 21:01:10

如果您有一个条件,并且希望尽早退出,您将使用return,因为多次调用res.send()将引发一个错误。例如:

代码语言:javascript
复制
//...Fetch a post from db

if(!post){
  // Will return response and not run the rest of the code after next line
  return res.status(404).send({message: "Could not find post."})
}

//...Do some work (ie. update post)

// Return response
res.status(200).send({message: "Updated post successfuly"})
票数 12
EN

Stack Overflow用户

发布于 2021-06-09 18:47:26

正如@kasho所解释的那样,这仅是短路功能所必需的。但是,我不建议返回send()调用本身,而是在它之后返回。否则,它会给出错误的表达式,认为send()调用的返回值很重要,但它并不重要,因为它只是undefined

代码语言:javascript
复制
if (!isAuthenticated) {
  res.sendStatus(401)
  return
}

res
  .status(200)
  .send(user)
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52919585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档