今天早晨,我在寻找答案并尝试许多尝试,但是我的axios API调用始终失败,并显示401错误。
此外,如果我尝试通过控制台或邮递员进行卷发,则该请求有效,而且我不明白为什么在前面使用vue和axios失败了。
我试图在全球范围内传递承载,然后选择一条唯一的路线
首先,我已经为Axios配置了模块
export default() => {
return axios.create({
baseURL: process.env.VUE_APP_API,
headers: {
'Content-Type': 'application/json',
Authorization: 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIyIn0.wxYD9dllTqT1gAIBmwo35Z4Q4qmlDZwXqz9FdYqXZnU'
}
})
}
然后我有我的请求
Api().get(`user-profiles/${id}`).then(function (response) {
return(response)
})
请求是这个:
Request URL: https://***
Request Method: OPTIONS
Status Code: 401
Remote Address: ****
Referrer Policy: no-referrer-when-downgrade
Access-Control-Allow-Headers: Content-Type
Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Location
Provisional headers are shown
Access-Control-Request-Headers: authorization
Access-Control-Request-Method: GET
Origin: http://localhost:8080
Referer: http://localhost:8080/login
User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Mobile Safari/537.36
您还需要其他数据吗? 如果我不使用不记名令牌,则该请求有效...
我需要传递一个Bearer令牌,因为对于生产版本,我无法摘下该Bearer。
预先感谢您的帮助。
答案 0 :(得分:1)
经过一番搜索,我找到了解决方案... 您需要使用cors政策授权后端... 在我自己的节点js后端中,它可以正常工作...我等待Java api后端的修复;)
答案 1 :(得分:0)
h'ttps://stackoverflow.com/questions/45578844/how-to-set-header-and-options-in-axios
就像在最佳答案中提到的那样,您应该参加
export default() => {
return axios.create({
baseURL: process.env.VUE_APP_API,
headers: {
'get': {
'Content-Type': 'application/json',
Authorization: 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIyIn0.wxYD9dllTqT1gAIBmwo35Z4Q4qmlDZwXqz9FdYqXZnU'
}
}
})
}