[[oktatas:web:back-end_framework:express:ervenyesseg|< Érvényesség]] ====== Express - Érvényesség node-input-validator-ral ====== * **Szerző:** Sallai András * Copyright (c) 2024, Sallai András * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== Függőségek ===== npm install node-input-validator ===== Validator ===== A node-input-validator használata esetén az alapértelmezés szerint nem kötelező megadni egy mezőt, ha az nincs **required** jelölővel megjelölve. Az alább példában, például nem kötelező megadni a city és salary mezőket, de a name mezőt kötelező. import { Validator } from 'node-input-validator'; const empValidator = (req, res, next) => { const validator = new Validator(req.body, { name: 'required|minLength:2', city: 'minLength:2', salary: 'numeric|digitsBetween:3,6' }); validator.check().then((matched) => { if (!matched) { res.status(422); return res.json({ errors: validator.errors }); } next(); }); }; export { empValidator }; ===== Használat az útválasztóban ===== import { Router } from 'express'; import EmployeeController from '../controllers/employeeController.js'; import { empValidator } from '../middlewares/validator.js'; const router = Router(); router.get('/employees', EmployeeController.index); router.post('/employees', [empValidator], EmployeeController.store); export default router; ===== Regisztráció ellenőrzése ===== Nézzünk néhány példát, a validator.js fájlon belül, hogyan lehetne ellenőrizni például egy regisztrációt. Egyszerűbb példa: const validator = new Validator(req.body, { user: 'required', pass: 'required', pass_confirm: 'required|same:pass' }); Következő példa: const validator = new Validator(req.body, { user: 'required', email: 'required|email', pass: 'required|minLength:8', pass_confirm: 'required|same:pass' }); ===== Link ===== * https://www.npmjs.com/package/node-input-validator (2024)