vue加token

本文讨论了在 Vue 应用中如何处理 Token 以便进行登录验证。主要内容包括:为何使用 Token,如何设置 Token 有效期,以及两种在 Vue 中实现登录状态管理和 Token 添加到请求头的方法——通过 vuex 和 axios 拦截器。同时,提到了在 .vue 文件中引入 store 的常见问题。
摘要由CSDN通过智能技术生成

今天遇到一个问题:登录了还一直让我去登录
在这里插入图片描述
我才知道是需要给请求头加上token
王哥说
token 就是你登录的时候返回给你的数据
这个token 你需要登录后 存起来
然后 再开一个拦截器,每次访问请求的时候 都把这个token 加到请求头里面去
不开拦截器的话 你就要在代码中 手动给你要发送的请求的请求头中 加上token
然后我就去查如何 Vue 如何给请求带上请求头 | 如何带上token

可以在登陆的时候获取token,然后存起来,在拦截器里面判断是否有你的token,有就统一加上呗

每次跳页面, 都要获取新路由对应的html页面, 这时候可以用axios的http拦截每次路由跳转, 都先让后台验证一下token是否有效, 在http头添加token, 当后端接口返回 401 Unauthorized–未授权 ,让用户重新登录。

深入理解token

为什么用token?
Token 是在服务端产生的。如果前端使用用户名/密码向服务端请求认证,服务端认证成功,那么在服务端会返回 Token 给前端。前端可以在每次请求的时候带上 Token 证明自己的合法地位。如果这个 Token 在服务端持久化(比如存入数据库),那它就是一个永久的身份令牌。

需要为 Token 设置有效期吗?

token和localstorage的结合

axios.interceptors.request.use(function (config) {
   
  let userInfo = localStorage.getItem('userInfo')
  let token = ''
  if (userInfo != undefined && userInfo.length > 10) {
   
    userInfo = JSON.parse(userInfo)
    if (userInfo.token) {
   
      token = userInfo.token
    }
  }
  //
  // if (config.url.indexOf(url) === -1) {
   
  //   config.url = url + config.url /* 拼接完整请求路径 */
  // }
  // config.url = config.url.replace(/\/\//, '/')

  config.withCredentials = true
  config.headers = {
   
    'token': token
  }
  return config
}, function (error) {
   
  return Promise.reject(error)
})
axios.defaults.timeout = 30000 // 超时时间
axios.interceptors.respo
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值