axios能不能配置公共params

如问题所属
我有三个字段是所有的请求中都要加上的 而且必须放在params中
现在想问的是 axios 有办法把这三个字段配置成公共参数么
先谢谢各位大佬回答

阅读 7k
4 个回答

const requestBefore = (config) => {
config. params = {

//在这里写你的公共参数

};
return config;
}

axios.interceptors.request.use(requestBefore);

在拦截器里面添加就可以了

可以看下 这个问题

  1. transformRequest 中添加
axios.defaults.transformRequest = [function(data) {
    ...
}];

2.拦截器里添加

axios拦截器(也可以用这个做每次请求之前的loading....) 附上链接链接描述

service.interceptors.request.use( 
  config => {
    // 判断是否登录是否有token ,这里登录时将token存之本地
    const USER_TOKEN = JSON.parse(sessionStorage.getItem('user')) && JSON.parse(sessionStorage.getItem('user')).USER_TOKEN
    // 登录不需要传token,看一下自己登录的接口包含哪个特殊字段
    if(USER_TOKEN && !config.url.includes('login')){
      config.headers.common['USER_TOKEN'] = USER_TOKEN
    }
    return config
  },
  err => {
    return Promise.reject(err)
  }
)

之前我回答的,大同小异,可以看看

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题