TypeError: req.checkBody no es una función

Estoy tratando de implementar alguna validación en un sistema de registro, pero me sale el error:

TypeError: req.checkBody is not a function 

del siguiente código:

 module.exports = function(app, express) { var express = require('express'); var api = express.Router(); // post users to database api.post('/signup', function(req, res) { var email = req.body.email; var password = req.body.password; var password2 = req.body.password2; var key = req.body.key; // Validation req.checkBody('email', 'Email is required.').notEmpty(); req.checkBody('email', 'Email is not valid').isEmail(); req.checkBody('password', 'Password is required').notEmpty(); req.checkBody('password2', 'Passwords do not match').equals(req.body.password); var errors = req.validationErrors(); if(errors) { res.render('register', { errors: errors }); } else { var user = new User({ email: email, password: password }); var token = createToken(user); } // save to database user.save(function(err) { if (err) { res.send(err); return; } res.json({ success: true, message: 'User has been created', token: token }); }); }); 

Lo verifiqué y obtengo la información de la parte delantera, y he tenido casi el mismo código de trabajo en otra aplicación (donde no se incluyó en module.exports = function (app, express) {}

Necesitas instalar express-validator usando el siguiente comando

 npm install express-validator 

Luego añade

 var expressValidator = require('express-validator'); api.use(expressValidator()) 

inmediatamente despues

 var api = express.Router(); 

Consulte TypeError: req.checkBody no es una función que incluya el módulo bodyparser y el expressvalidator para obtener más detalles

Igual que en la respuesta anterior, después de instalar Express-Validator, agregando

 server.use(expressValidator()); 

debajo

 const express=require("express"); 

y

 const server=express(); 

resuelto mi problema