express中间件中怎么req.headers.Authorization?

发布于 2022-09-12 23:24:00 字数 775 浏览 26 评论 0

express中间件中怎么获取req.headers.Authorization? 为什么我一直是undefined。
下面代码设置了也不起作用。各位大哥指点我一下,谢谢!

var allowCors = function (req,res,next){
  res.header("Access-Control-Expose-Headers", "Authorization");
  next();
}
app.use(allowCors);
// 验证授权中间件
const verifyAuth = async (req,res,next) => {
  console.log('验证授权中间件');
  let authorization = req.headers['Authorization']
  console.log(authorization); // 这里一直是undefined
  
  try{
    // 获取token
    let token = authorization.replace('Bearer ','')
    // 验证token
    let result = jwt.verify(token,config.PUBLIC_KEY,{
      algorithms:['RS256']
    })
    req.user = result
    await next()
  } catch (e) {
    await next(new Error(errorTypes.INVALID_TOKEN))
  }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

还在原地等你 2022-09-19 23:24:00

前端要在请求头加上Authorization,在axios的请求拦截器中加上config.headers['Authorization'] = 'xxx'

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文