Est-il possible, en utilisant le fetch API, de définir des en-têtes par défaut pour chaque requête?
Ce que je veux faire est de définir un en-tête Authorization
chaque fois qu'il y a un jeton web json dans le localStorage
. Ma solution actuelle est de définir les en-têtes avec cette fonction: Définir l'en-tête par défaut pour chaque requête fetch()
export default function setHeaders(headers) {
if(localStorage.jwt) {
return {
...headers,
'Authorization': `Bearer ${localStorage.jwt}`
}
} else {
return headers;
}
}
Réglage des en-têtes dans une demande de récupération doit ressembler à ceci:
return fetch('/someurl', {
method: 'post',
body: JSON.stringify(data),
headers: setHeaders({
'Content-Type': 'application/json'
})
})
Mais il doit y avoir une meilleure façon de faire ce. Je développe actuellement une application React/Redux/Express si cela aide.
Si pour une raison quelconque, vous ne souhaitez pas utiliser les emballages existants vont chercher autour, écrire à ajouter en-tête d'autorisation devrait être simple. –