3

I'm new on node js develop. I'm developing a Login / Signup process using bycript and verification mail. I have implemented the verification token send by mail using this code:

router.get('/verification/:token', function(req, res) {

// Check for validation errors
var errors = req.validationErrors();
if (errors) return res.status(400).send(errors);

// Find a matching token
Token.findOne({ token: req.params.token }, function (err, token) {
if (!token) return res.status(400).send({status: 'ko',error: {type: 'not-verified', msg: 'We were unable to find a valid token. Your token my have expired.'}} );

// If we found a token, find a matching user
User.findOne({ _id: token._userId }, function (err, user) {
  if (!user) return res.status(400).send({ msg: 'We were unable to find a user for this token.' });
  if (user.isVerified) return res.status(400).send({status: 'ko',error:{type: 'already-verified', msg: 'This user has already been verified.'}});

  // Verify and save the user
  user.isVerified = true;
  user.save(function (err) {
    if (err) { return res.status(500).send({ msg: err.message }); }
    res.status(200).send({status: 'ok', data: { msg: 'The account has been verified. Please log in.'}});
        });
    });
});

});

this code works fine, but show me a message into the browser. I would like to render a specific HTML page when clicking on verify URL, that shows the message OK. How can I do this? I have created a folder called html/welcome.html

Dale K
  • 25,246
  • 15
  • 42
  • 71
gisman
  • 119
  • 1
  • 10

1 Answers1

2

HTML files are static files. You have to set up Express to use static files.

in your case, that'd be app.use(express.static(__dirname+'/html')) This is documentation about serving static files in express

SanSolo
  • 2,267
  • 2
  • 24
  • 32