node.js - 如何在 Axios 中传递 Bearer 令牌
问题描述
我今天早上寻找答案并尝试了很多东西,但我的 axios API 调用总是失败并出现 401 错误。
此外,如果我尝试从控制台或邮递员的 curl 请求工作,我不明白为什么在我前面使用 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 令牌,则该请求有效......
我需要传递一个不记名令牌,因为对于生产版本,我无法取消不记名。
预先感谢您的帮助。
解决方案
经过一番搜索后,我找到了解决方案...您需要使用 cors 策略授权后端...在我自己的 node js 后端有效...我等待 java api 后端的修复;)
推荐阅读
- php - symfony 提交到链接表实体
- sql - 如何使用范围内的数字生成表格
- reactjs - React bootstrap自定义导航链接活动样式不起作用
- javascript - 为什么不能在该构造函数中指定构造函数的原型?JavaScript
- python - 通过 Node.js 驱动的 Electron 应用程序与 Python shell 通信
- python - 如何在多处理池中正确保存字典
- python - subprocess.Popen 返回“shell-init:检索当前目录时出错”
- c# - 如何根据用户输入链接方法?
- sql - 将完全相同列上的两个查询连接到一个结果表中
- firebase - 为什么 RxJava Completable 发射器中的 Firebase 任务不执行?