const express = require('express');
const { check, validationResult } = require('express-validator');
const router = express.Router();
router.post(
'/',
[
check('password')
.not()
.isEmpty()
.withMessage('Please enter Password')
.isLength({ min: 8, max: 25 })
.withMessage('Password Must be 8-25 characters long')
.matches(/^[\S]+$/)
.withMessage('Password must not contain spaces')
.matches(
/^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%* #+=\(\)\^?&])[A-Za-z\d$@$!%* #+=\(\)\^?&]{8,25}$/
)
.withMessage(
'Password must contain at least 1 letter, 1 number and 1 special character'
),
],
(req, res) => {
const errors = validationResult(req);
if (!errors.isEmpty()) {
return res.status(400).json({ errors: errors.array() });
}
res.send('User details okay');
}
);
module.exports = router;
// Postman
/*
{
"password": "aaaaaa1!"
}
*/
/*
run:
User details okay
*/