uview自带的this.$u.http,在响应拦截中想处理异常码。但是只有正常的请求在响应拦截里才能拿到返回的res,异常的请求别说res了,连console.log(111)都不执行,有遇见过的吗?
Vue.prototype.$u.http.interceptor.response = (res) => {
console.log(111)/ //正常请求执行,异常不执行
return res
}
uview自带的this.$u.http,在响应拦截中想处理异常码。但是只有正常的请求在响应拦截里才能拿到返回的res,异常的请求别说res了,连console.log(111)都不执行,有遇见过的吗?
Vue.prototype.$u.http.interceptor.response = (res) => {
console.log(111)/ //正常请求执行,异常不执行
return res
}
5 个回复
s***@163.com
同求 ,奈何uview的官方群太垃圾问个问题都没人理哈哈,楼主解决了么
1***@163.com - 啊啊啊
originalData: true
如果将此值设置为true,拦截回调中将会返回服务端返回的所有数据response,而不是response.data
tengzhenxin
可以直接去改uview-ui/libs/request/index.js 根据状态码自己去加咯
q***@163.com
正解originalData: false, // 是否在拦截器中返回服务端的原始数据,见文档说明
3***@qq.com
uview request/index.js 97行改一下
.catch(res => {
// 如果返回reject(),不让其进入this.$u.post().then().catch()后面的catct()
// 因为很多人都会忘了写后面的catch(),导致报错捕获不到catch
return new Promise(() => {
uni.showToast({
title: res.data.message,
icon: 'none'
});
});
})