从服务器发送的激活网址中获取令牌

时间:2020-07-30 08:41:44

标签: node.js sendgrid nodemailer

我是编码登录系统的新手,现在我正在注册后编码帐户激活逻辑。

我正在使用以下网址向注册用户发送电子邮件:

127.0.0.1:3000/activate/(token here)

当用户以这种方式访问​​该URL时,我在服务器端进行处理:

app.get('/activate', ( req, res) => {
  res.sendFile( __dirname + '/public/activation.html')
})

但是当然没有每个唯一令牌的处理程序,所以我需要一种访问该app.get ... / activate的方法,但是有点忽略了令牌的第二部分,因此文件被提供但保持将该变量放入变量中,以便稍后在其内部逻辑中对其进行操作。

如何实现?我的方法完全错误吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用动态链接

app.get("/activation/:token",(req,res,next)=>{
  
  const token = req.params.token;
  //don't use token directly in sql database 
});