我正在尝试在VueJS客户端和PHP API(使用Zend和firebase)上设置JWT令牌认证。 我设法通过创建存储在LocalStorage中的JWT令牌来登录用户。现在,我想将此令牌发送回API(以便API解码JWT并返回关联的信息)。我尝试使用axios在VueJS的标头中设置“授权:承载+令牌”,但我总是遇到问题。 这是一个代码段:
function getInfos() {
return axios({
method: 'get',
url: MYURL,
headers: {
Authorization: 'Bearer ' + localStorage.getItem('user')
}
})
.catch(handleResponse)
}
首先,我收到此错误:
Access to XMLHttpRequest at 'MYURL' from origin 'http://localhost:8080' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
然后,在我的PHP API中需要标题时,我没有任何授权:
header("Access-Control-Allow-Origin: *");
header('Access-Control-Allow-Headers: *');
$request = new Request();
我知道我可能必须使用
axios.defaults.headers.post
或axios.interceptors
,但我是一个初学者,所以我不知道如何正确使用它。.
我希望有人能够帮助我!谢谢
答案 0 :(得分:0)
我认为*在设置自定义标头时不起作用,您必须至少键入标头(“ Access-Control-Allow-Headers:Authorization”),这是我遇到的问题