Axios.js aracılığıyla bir belirteç içeren bir kimlik doğrulama başlığını nasıl gönderebilirim? Başarı olmadan birkaç şey denedim, örneğin:
const header = `Authorization: Bearer ${token}`;
return axios.get(URLConstants.USER_URL, { headers: { header } });
Bana şu hatayı veriyor:
XMLHttpRequest cannot load http://localhost:8000/accounts/user/. Request header field header is not allowed by Access-Control-Allow-Headers in preflight response.
Global varsayılanı ayarlayarak çalışmasını sağlamayı başardım, ancak bunun tek bir istek için en iyi fikir olmadığını tahmin ediyorum:
axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
Güncelleme :
Cole'un cevabı sorunu bulmama yardımcı oldu. Yetkilendirme başlığını varsayılan olarak zaten işleyen django-cors-headers ara yazılımını kullanıyorum .
Ancak hata mesajını anlayabildim ve axios istek kodumdaki bir hatayı düzelttim, bu şuna benzer
return axios.get(URLConstants.USER_URL, { headers: { Authorization: `Bearer ${data.token}` } });
return axios.get(URLConstants.USER_URL, { headers: { Authorization: `Bearer ${data.token}` } });