Node 登录时 token 判断

token

// 登录成功后在 sessionStorage 或者 localStorage 中放入 token
window.localStorage.setItem('token', token)
window.sessionStorage.setItem('token', token)

// 请求拦截 将 sessionStorage 中的 token 放入请求头 (headers) 中
axios.interceptors.request.use(config => {
  config.headers.Authorization = window.sessionStorage.getItem('token')
  return config
})

// 获取请求头 (headers) 中的 token 判断是否登录
app.get('/axios', (req, res) => {
    res.send('axios get 传递参数' + req.headers.authorization)
})

jwt (jsonwebtoken)

// login 生成token
let user = { username: 'wkj' }; // 要生成token的主题信息
let secretOrPrivateKey = "suiyi" // 这是加密的key(密钥) 
let token = jwt.sign(user, secretOrPrivateKey, {
        expiresIn: 60*60*1  // 1小时过期
    });
return token

// istoken 解析token
let user = {}; // 从token获取的主题信息
let secretOrPrivateKey = "suiyi" // 这是加密的key(密钥) 
jwt.verify(token, secretOrPrivateKey, (err, decode) => {
  if(err){
    return '登录已过期'
  } else {
    user = decode
  }
})

....

 

posted @ 2021-04-21 10:52  混名汪小星  阅读(298)  评论(0编辑  收藏  举报