设置现有实例的axios请求标头

时间:2017-07-21 15:34:02

标签: reactjs axios

我有一个axios拦截器用于我的反应应用程序,我希望有条件地应用授权标头(某些服务正在点击需要auth标头的内部服务,其他服务在外部并且包含它失败)。我在axios repo上看到,您可以轻松创建包含标题的实例,如下所示:

var instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

但在这种情况下,标题将始终包含在内。在我的拦截器中,我尝试过几次尝试:

axios.interceptors.request.use(function ( config ) {
  if ( serviceRequiresToken(config.url) ) {
    config.headers[ config.method ] = {'Authorization': this.props.userData.token.authorizationHeader};
  }
  return config;
}, function ( error ) {
  return Promise.reject(error);
});

但是当我使用它时,永远不会进行调用(我没有获得403或任何东西,它只是不发送请求)。我也尝试了config.headers.push({'auth..':'...'}),但情况类似。

0 个答案:

没有答案