Percebi que quando várias instâncias de axios são criadas com configuração de cabeçalhos personalizados, a mais recente substituirá qualquer outra configuração definida anteriormente. Aqui está o trecho de código mais simples para reproduzi-lo:
const axios = require('axios');
const baseURL = '';
const first = axios.create({ baseURL });
first.defaults.headers.common.authorization = 'foo';
const second = axios.create({ baseURL });
second.defaults.headers.common.authorization = 'bar';
console.log(first.defaults.headers.common);
Resulta em :
Object
Accept: "application/json, text/plain, */*"
authorization: "bar"
...
Não tenho certeza se esse é o comportamento correto, pois as instâncias devem ser independentes.
Eu gostaria de poder escrever first.headers.authorization = 'foo'
e mudar para essa instância
Bem, a única maneira de contornar essa limitação parece forçar o valor do cabeçalho:
first.get('/posts', {
headers: {
authorization: 'foo',
},
})
Isso é parte de um problema maior que vamos abordar em breve (e muito mais tarde do que é razoável). Veja #812.
Comentários muito úteis
Isso é parte de um problema maior que vamos abordar em breve (e muito mais tarde do que é razoável). Veja #812.