vue-axios 接口返回状态不是 200时,怎么处理返回结果

用axios发送请求,接口返回的status不是200,而是其他的状态值比如400,401等;则在catch的时候,返回的error并不是一个对象,而是这样的字符串:

Error: Request failed with status code 401
    at FtD3.e.exports (createError.js:16)
    at e.exports (settle.js:17)
    at XMLHttpRequest.w (xhr.js:66)

但是,在浏览器响应中有返回结果,在代码中却不能捕获到,如下
在这里插入图片描述
那么怎么获取这个返回值呢;
用error.response来接收error.response返回的就是这个错误对象,如下:

axios.get('/user/12345')
  .then((res) => {
  })
.catch((error) => {
		console.log(error.response)
          if (error.response) {
            // 请求已发出,但服务器响应的状态码不在 2xx 范围内
            This.$message.error(error.response.data.msg)
          } else {
            // Something happened in setting up the request that triggered an Error
            console.log('Error', error.message);
          }
        })
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值