分析原因:
axios内部的报错机制:
-
如果本次请求得到的响应的状态码 不是2开头的(如:400,500),就会主动抛出错误。
-
如果本次请求出现网络错误,就会主动抛出错误
当我们提供错误的用户名和密码时,本次请求的状态码是正常的(但是:success字段是false),也没有网络错误,所以axios并不会报错。如下图示
解决思路:
在响应拦截器中,根据本次请求返回的数据中的success字段值,来决定是否主动抛出错误。
分析原因:
axios内部的报错机制:
如果本次请求得到的响应的状态码 不是2开头的(如:400,500),就会主动抛出错误。
如果本次请求出现网络错误,就会主动抛出错误
当我们提供错误的用户名和密码时,本次请求的状态码是正常的(但是:success字段是false),也没有网络错误,所以axios并不会报错。如下图示
解决思路:
在响应拦截器中,根据本次请求返回的数据中的success字段值,来决定是否主动抛出错误。