javascript - 什么是 Try-Catch 真正的捕获

标签 javascript try-catch

Try-Catch 真正捕获了什么?什么情况下会触发catch?

如果提出请求:

try { 
   const response = await axios.get('someURL/api/apiEndpoint')
   ...(do something with response)
} catch(error) {
    console.error(error);
    ...(Do something with error)
}

和后端代码:

 app.get('/api/apiEndpoint', (req, res, next) => {
     const notLoggedIn = () => {
         return res.status(200).send({
             error: 'Not logged in'
         })
     }
 })

try-catch block 会捕获错误吗?

最佳答案

不,只有当响应具有错误状态代码(例如 503(内部服务器错误)、400(错误请求))时,它才会进入 catch block

在您的情况下,您发送 200 状态代码,因此它不会进入 catch

有关状态代码的更多信息,请检查 - https://httpstatuses.com/

关于javascript - 什么是 Try-Catch 真正的捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54502376/

相关文章:

java - 当我的文件位于正确的文件夹中时,为什么我一直从我的 catch 异常中获取 "File not found."?

javascript - 如何像谷歌一样在浏览器视口(viewport)中间居中div

javascript - Mocha 中无法修复的错误

javascript - 在基于 Java 的 Web 应用程序中从数据库到前端的实时数据复制

php - 新手 : throw new exception - can we change exception name?

java - Controller 级别的两个 try catch block

javascript - html 日期时间形式

Javascript 在不使用 ID 标签的情况下更改类

c# - Catch vs Catch(异常 e)和 Throw vs Throw e

java - 为什么 Java 有嵌套的 try 语句?