0.0.7 • Published 12 months ago

@utoolkits/request v0.0.7

Weekly downloads
-
License
-
Repository
-
Last release
12 months ago

Request

1. 安装依赖

yarn add @utoolkits/request
or
npm i @utoolkits/request

2. 初始化

import Request from '@utoolkits/request';
const request = Request({
  // 1. 支持 axios 配置参数
  timeout: 3000,
  ...
  // 2. 根据返回内容填充 Authorization
  getToken() {
    return '';
  },
  // 3. token 无效时回调
  loginOut() {},
  // 4. 全局错误提示
  notify(msg) {},
});
参数默认值描述
getToken可选获取业务系统 token
loginOut可选当传入了 loginOut 时,当 token 无效、过期时会执行
notify可选当传入了 notify 时,非 SUCCESS 会提示对应错误

3. 添加拦截器

3.1 请求拦截器

request.interceptors.request.use(
  (config) => {},
  (error) => {}
);

3.2 响应拦截器

request.interceptors.response.use(
  (config) => {},
  (error) => {}
);

4 注意事项

  • 请求拦截器后加入先执行,响应拦按加入顺序执行。
[请求拦截器] 外部
[请求拦截] 内部
[响应拦截] 内部
[响应拦截器] 外部
  • 针对 Http 状态码, axios 默认 status200 ~ 299 认为成功的, 当服务端返回非区间的值 500,拦截器应该是如何执行的。
[响应错误拦截器] 内部
[响应错误拦截器] 外部
  • 针对业务 code 码,当抛出非 SUCCESS 时,拦截器执行顺序
[请求拦截器] 外部
[请求拦截] 内部
[响应拦截] 内部
[响应拦截器] 外部
  • 请求成功拦截器出现异常时,拦截器执行顺序如下
[请求成功] 外部
[响应错误拦截器] 内部
[响应错误拦截器] 外部
0.0.5

12 months ago

0.0.7

12 months ago

0.0.6

12 months ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago