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/

相关文章:

javascript - 创建一个接受字符串并返回 true 或 false 的函数,具体取决于该字符串是否包含重复字符

c# - 以编程方式抑制 C# 中的异常

tcl - 实时 TCL 执行输出

java - try block 与空 finally block

javascript - ReactJs 调色板抽屉

javascript - 使用相对定位的元素拖放 Angular 文件上传

javascript - 未捕获的语法错误 : Unexpected token in JSON at position 0

javascript - 重写 JS 中的赋值运算符

objective-c - 如果包含 @try @catch block ,则不带 return 语句的 Obj-C 方法可以编译

c++ - 确保始终捕获异常