封装的axios,如果请求错误会出现404之类的状态码,我想拿到这些状态码做一些提示功能,但是拿不到,不知道哪儿出了问题,写过的大神帮忙看一下
如果请求出现错误,在错误处理里面只能输出error,error.response和error.response.status都是没有值的,比如下面我特意写错一个接口,应该返回404,但是我是拿不到的
然后我输出error.response和error.response.status,都是没有值的
封装的axios,如果请求错误会出现404之类的状态码,我想拿到这些状态码做一些提示功能,但是拿不到,不知道哪儿出了问题,写过的大神帮忙看一下
没有人写过吗?快要疯了
你的 response
里面包含什么数据
拦截的是发送完成后的错误,你这个有跨域问题,发送都发送不出去,何来拦截
那个是一个错误的地址当然发送不出去,根本就没有那个请求地址,是我特意写错的地址,就是想获取那个状态码
你拦截的是接收 ,但是你没发送 所以没接收
我试了一下如果换成同域名是可以的,同域名的情况下可以接收到404
就目前我的测试情况是由于跨域的问题
你想单纯地改 error 的状态的话 可以这样手动添加 code
axios.interceptors.response.use(
res => {
return Promise.reject({
code:404
})
return res
},
error => {
console.log(error.code)
return Promise.reject(error)
}
)
另外,跨域可以使用代理解决
这个问题最后怎么解决的,问题出在哪?
使用代理,或者上线后和接口在一个域名下就行了
这个问题我也很好奇,请求拦截和响应拦截具体应该判断哪些状态码呢
同源情况下可以获取到验证码