在快速节点js中访问tocken身份验证(无jwt或通行证)

时间:2018-10-27 09:17:31

标签: node.js rest express

我正在构建一个REST API服务器,以生成访问32 char令牌(如果已经存在,则获取表格Db)并在用户登录后返回,然后每次用户想要做某事时,则他/她应在标头中发送access token,并在正文中发送任何内容,并针对每个请求,由服务器检查访问令牌的有效性,然后响应用户and token are valid only for a day if user wont sign out

所以我想知道这是验证用户身份的安全方法吗?有没有办法使它更安全?

1 个答案:

答案 0 :(得分:0)

您可以将中间件添加到快速应用中,并在其中验证令牌(如果有效)继续进行操作,否则向用户返回错误响应。

app.use(function(req, res, next) {

  // check header or url parameters or post parameters for token
  var token = req.headers['x-access-token'];
  // decode token
  if (token) {

    // verifies token 
   var isValidToken = validateToken(token); // function to validate token
    if( isValidToken ){
        next();
     }else{
       // if there is no token
    // return an error
    return res.status(403).send({ 
        success: false, 
        message: 'No token provided.' 
    });
    }

  } else {

    // if there is no token
    // return an error
    return res.status(403).send({ 
        success: false, 
        message: 'No token provided.' 
    });

  }
});