const app = require('express')();
const session = require('express-session');
const {
check,
validationResult
} = require('express-validator/check');
app.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true,
cookie: { secure: false }
}))
app.get("/test", [
// username must be an email
check('username').not().isEmpty(),`//.withCustomMessage() based on the content of req.session`
// password must be at least 5 chars long
check('password').not().isEmpty()
],(req,res)=>{
console.log("req.session", req.session);
// Finds the validation errors in this request and wraps them in an object with handy functions
const errors = validationResult(req);
if (!errors.isEmpty()) {
return res.status(422).json({ errors: errors.array() });
}
//console.log("req.session",req.session);
});
app.get("/",(req,res,next)=>{
req.session.message = "beoulo ";
// console.log(req.session);
res.status(200).json({
"status" :"session set"
});
});
app.listen(3000,()=>{
console.log("Listening on port 3000!!!");
});
Является ли прохождение проверки напрямую в качестве промежуточного программного обеспечения единственным способом ее использования?
Можем ли мы по-прежнему использовать формат req.checkbody (field, errormessage) или что-то эквивалентное внутри отдельной функции промежуточного программного обеспечения, потому что сообщение об ошибке должно быть взято из сеанса
Я хочу получить доступ к переменной из req.session и на ее основе создать собственное сообщение об ошибке
предыдущая реализация работала нормально, так как использовала req.checkBody ()
с новыми изменениями, что я должен сделать, чтобы справиться с этим сценарием.