J'ai remarqué que lorsque plusieurs instances d'axios sont créées avec une configuration d'en-têtes personnalisée, la dernière remplace toute autre configuration précédemment définie. Voici le bout de code le plus simple pour le reproduire :
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);
Résulte en :
Object
Accept: "application/json, text/plain, */*"
authorization: "bar"
...
Je ne suis pas sûr que ce soit le bon comportement puisque les instances sont censées être indépendantes.
J'aimerais pouvoir écrire first.headers.authorization = 'foo'
et le faire changer pour cette instance
Eh bien, la seule façon de contourner cette limitation semble être de forcer la valeur de l'en-tête :
first.get('/posts', {
headers: {
authorization: 'foo',
},
})
Cela fait partie d'un problème plus vaste que nous allons aborder bientôt (et bien plus tard que ce n'est raisonnable). Voir #812.
Commentaire le plus utile
Cela fait partie d'un problème plus vaste que nous allons aborder bientôt (et bien plus tard que ce n'est raisonnable). Voir #812.