场景
习惯性使用async await获取后台接口数据了,突然发现接口报错403时,await之后的逻辑没有执行。
解决办法
使用try catch finally语句包裹await代码。
接口调用成功后的逻辑代码:放在try语句中;
接口调用异常(比如403状态码等)要执行的逻辑代码:放在catch语句中;
如果是接口调用正常或者异常都要执行的逻辑代码:就放在finally中(例如关闭loading状态)。
示例
try {
}
catch (error) {
}
finally {
}
如果我们不需要获取error(例如有时候是在全局拦截器中统一处理了公共错误403等),也可以省略catch语句。
try {
}
finally {
}