axios网络请求怎么在拦截器中添加公共参数并对参数进行排序生成密钥?

如题:axios网络请求怎么在拦截器中添加公共参数并对参数进行排序生成密钥?

阅读 672
1 个回答

可以通过继承InternalAxiosRequestConfig类来实现自定义config类型,

用法可参考:https://gitee.com/openharmony-sig/ohos\_axios/issues/I8LZ17?from=project-issue

//自定义config类型
interface CustomConfig extends InternalAxiosRequestConfig {
  customFlag?: boolean;
}

const instance = axios.create();

// 请求拦截器
instance.interceptors.request.use((config: CustomConfig) => {
  config.customFlag = true;
  return config;
});

// 响应拦截器
instance.interceptors.response.use((response: AxiosResponse) => {
  const config: CustomConfig = response.config;
  if (config.customFlag) {

  }
  return response;
});

instance({
  url: 'xxx'
})