如何使用 express.js 验证表单?

How to validate a form with express.js?

我刚开始学习 node.js 网络框架 - express.js 我需要一些验证表单的帮助。我希望你能帮助我。

这是我的表单页面:

<!DOCTYPE html>
<html>
  <head>
    <title>{{ title }}</title>
    <link rel='stylesheet' href='/stylesheets/style.css' />
  </head>
  <body>
        <div>

{{ number1 }} + {{ number2 }} = <form action="/" method="POST"> <input type="number" name="result"/>
<input type="submit" name="submit" value="Result"/>
        </div>
  </body>
</html>

这是我发送表单的地方。

var express = require('express');
var router = express.Router();

router.get('/', function(req, res){
    res.render('index', {
      title: 'Test',
     number1: 7,
     number2: 5,
     });

});

router.post('/', function(req, res){
     var result=req.body.result;
     res.send(result+ " is the right answer !");


});

module.exports = router;

所以这只是一个简单的验证。我有两个数字“5”和“7”,我希望当用户在数字输入字段中输入 5+7 的结果时,所以当他输入 12 时,给他打开一条消息(“12 是正确答案”)当他输入一个不同于 12 的数字时,会给他一条错误消息,例如(“15 不是正确答案”)。我希望你能帮助我谢谢你! :)

在呈现表单时设置 req.body 中的两个数字。然后相加并与 req.body.result

进行比较

是这样的吗?

router.post('/', function(req, res){
    var firstNum = req.body.firstNum;
    var secondNum = req.body.secondNum;    
    var result = req.body.result;

    if(result === firstNum + secondNum) {
      res.send(result+ " is the right answer !");
    } else {
      res.send(result + " isnt the right answer")
    }
});