【发布时间】:2017-10-29 22:41:47
【问题描述】:
如何通过 axios.js 发送带有令牌的身份验证标头? 我尝试了一些没有成功的事情,例如:
const header = `Authorization: Bearer ${token}`;
return axios.get(URLConstants.USER_URL, { headers: { header } });
给我这个错误:
XMLHttpRequest cannot load http://localhost:8000/accounts/user/. Request header field header is not allowed by Access-Control-Allow-Headers in preflight response.
我已经设法通过设置全局默认值来让它工作,但我猜这对于单个请求来说不是最好的主意:
axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
更新:
Cole 的回答帮助我找到了问题所在。我正在使用默认情况下已经处理授权标头的 django-cors-headers 中间件。
但我能够理解错误消息并修复了我的 axios 请求代码中的错误,它应该看起来像这样
return axios.get(URLConstants.USER_URL, { headers: { Authorization: `Bearer ${data.token}` } });
【问题讨论】:
标签: javascript axios