axios拦截器携带token_1
目前在研究一个数据管理平台的前后端分离项目,使用axios拦截器获取用户登录后存储在localsession的token值,结果发现在浏览器的network请求标头中并没有token的信息。
最初的代码是这样子的:
// 设置一个请求的拦截器,来设置token
axios.interceptors.request.use(
config => {
// 获取token,sessionStorage
console.log(window.sessionStorage.getItem('token'))
const tokenStr = window.sessionStorage.getItem('token')
if (tokenStr) {
config.headers.token = tokenStr
}
return config
}
)
结果发现:
查看Network,发现POST请求虽然成功了,但是并没有包含token的内容:
说明const tokenStr = window.sessionStorage.getItem('token')并没有拿到token。
如果这个时候刷新一下页面,重新跳转到login页面,在进行登录的话,就能拿到token的数据了。
如果这个时候刷新一下页面,重新跳转到login页面,在进行登录的话,就能拿到token的数据了。同时network也包含了token的值:
查阅了相关的资料,这个帖子似乎解决了这个问题(axios全局设置请求头token必须刷新一次才生效_我以为我可以的的博客-CSDN博客),但是自己测试了一下,貌似不行。
另外还有一篇帖子(重读vue电商网站28之通过axios请求拦截器添加 token - 前端导师歌谣 - 博客园 (cnblogs.com)),这个帖子说:在登录期间,服务器是不会颁发令牌(token)。如果登录之后,调用其它 api 接口的话,就会颁发相应的token令牌。
我理解的就是应该不影响,接着往下做的时候再来看看这个问题到底影响不影响整体的项目了。
分类:
数据管理系统踩过的坑
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?