格式化带有标题的GET请求以进行护照认证

时间:2018-11-14 01:33:57

标签: node.js http passport.js

我正在尝试创建与GET请求相对应的电子邮件验证链接,该请求指向具有护照的已验证路线。 通常,所有这些受auth.required控制的路由都需要带有身份验证信息的标头,即用户的ID和令牌。

鉴于在我的情况下,我只需要用户单击链接,因此我该如何手动形成这样的链接。

对于上下文,这是经过身份验证的路由的路由方式:

router.use(user_routes.authenticated, auth.required, authenticated)

auth代码:

const jwt = require('express-jwt');

//TODO : DOCUMENT AND SYNTAX
const getTokenFromHeaders = (req) => {
  const { headers: { authorization } } = req;

  if(authorization && authorization.split(' ')[0] === 'Token') {
    return authorization.split(' ')[1];
  }
  return null;
};

const auth = {
  required: jwt({
    secret: 'secret',
    userProperty: 'payload',
    getToken: getTokenFromHeaders,
  }),
  optional: jwt({
    secret: 'secret',
    userProperty: 'payload',
    getToken: getTokenFromHeaders,
    credentialsRequired: false,
  }),
};

module.exports = auth;

0 个答案:

没有答案