Comments (9)
在拦截器里判断 怎么能够阻止Promise呢,或者让Promise返回 reject,在拦截器里直接 return Promise.reject(data)也不太好使
from umi-request.
errorHandler
目前对我来说没有用,我都是在拦截器里判断的。
from umi-request.
这个需求,你应该直接在interceptor里处理,然后throw Error出来,在errorHandler里面去catch
from umi-request.
我觉得这个太有必要了,现在我碰到的需求就是如此 http状态码是http层的,内部会与后台约束 自己的内部状态码,如果在 request.interceptors.response.use 内抛出错误,errorHandler的error参数是为空的。但是如果没有errorHandler 方法,我http层的请求又补货不到,这个有点让人感觉到麻烦,如果有了这项功能,我觉得会比 axios完美太多了。
from umi-request.
弃坑了,换回了axios,无法对response的数据进行加工处理,每个请求都要判断一遍很麻烦。
from umi-request.
不知道怎么加自己的错误拦截了,也有同样的需求
from umi-request.
@clock157 请问一下,这个功能加上了吗
from umi-request.
但是如果没有errorHandler 方法,我http层的请求又补货不到,这个有点让人感觉到麻烦,如果有了这项功能,我觉得会比 axios完美太多了。
@world56 没有 errorHandler 时, HTTP 层的请求捕获不到是什么场景,当前版本的第一层拦截器里面拿到的就是原生的响应(包括 HTTP 状态码、Response Headers 以及响应的类型等等,具体可以看文档描述 https://github.com/umijs/umi-request/blob/master/README_zh-CN.md#%E5%93%8D%E5%BA%94%E7%BB%93%E6%9E%84 ),还是说之前的版本不支持获取原始响应?
from umi-request.
分享一下处理方法
// 响应拦截器
cRequest.interceptors.response.use(async (response, options) => {
const data = await response.clone().json();
if (data?.code && data.code !== 200) {
return Promise.reject(data);
}
return response;
});
// errorHandler 处理
const errorHandler = (error: { response: Response }): Response | undefined => {
const {
// response: { status },
response,
} = error;
if (error.code && error.code !== 200) {
notification.error({
key: 'error',
message: error.msg,
});
throw error;
}
...
from umi-request.
Related Issues (20)
- POST request with base64 image HOT 1
- 是否支持路径参数
- 能否实现像useRequest一样的对于同一个请求 请求多次默认只保留最后的请求结果
- Request 搞那么麻烦干嘛?简化呢?
- 好好的axios让你们封装成了依托答辩,真的是服了 HOT 1
- 请求成功还是触发了timeout
- stream类型支持吗 HOT 1
- 用在小程序上可以吗 HOT 5
- 1
- 1
- How to use RequestConfig based on @umijs/max to make the front end insensitive to refresh tokens
- 使用vite,在修改页面后,接口出现errorHandler.ts:37 TypeError: response.clone is not a function的报错,但是刷新一下页面报错就没了,请问是什么原因
- 引用链接失效
- 我试图在RequestConfig中修改headers的Content-Type,可这样始终无法生效 HOT 1
- 不使用umi全家桶单独使用umi-request 如何使用mock.js 拦截请求? HOT 1
- 请求设置 requestType: 'form' 无效 HOT 1
- umi-request在next.js中可以使用吗?
- 请求时怎么配置忽略SSL校验 HOT 1
- Can 'GET' use with data ?
- umijs 的request怎么监听响应码302 重定向的状态呢?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from umi-request.