oktatas:web:back-end_framework:express:ervenyesseg:yup
Tartalomjegyzék
Express - Érvényesség Yup-pal
- Szerző: Sallai András
- Copyright © 2024, Sallai András
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Bevezetés
Célunk a bejövő adatok ellenőrzése. A bejövő adatokat ellenőrizhetjük a kontrollerben, a modellben vagy írhatunk rá köztes szoftvert.
Függőségek
npm install yup
Köztes szoftver
- app/middlewares/userValidator.js
import { object, string } from 'yup'; const userRegisterValidator = (req, res, next) => { const userSchema = object({ name: string().required(), email: string().email().required(), password: string().required() }) userSchema.validate(req.body) .then(() => next()) .catch(err => { res.status(400) res.json({ success: false, message: err.message }) }) } const userLoginValidator = (req, res, next) => { const userSchema = object({ name: string().required(), password: string().required() }) userSchema.validate(req.body) .then(() => next()) .catch(err => { res.status(400) res.json({ success: false, message: err.message }) }) } export { userRegisterValidator, userLoginValidator }
Használat
import { userRegisterValidator, userLoginValidator } from '../middlewares/userValidator.js' //... router.post('/register', [userRegisterValidator], AuthController.register) router.post('/login', [userLoginValidator],AuthController.login)
Dolgozat
- app/middlewares/employeeValidator.js
import { object, string, number } from 'yup'; const employeeCreateValidator = (req, res, next) => { const employeeSchema = object({ name: string().required(), city: string(), salary: number() }) employeeSchema.validate(req.body) .then(() => next()) .catch(err => { res.status(400) res.json({ success: false, message: err.message }) }) } export { employeeCreateValidator }
router.post('/employees', [employeeCreateValidator], EmployeeController.store)
oktatas/web/back-end_framework/express/ervenyesseg/yup.txt · Utolsó módosítás: 2024/12/30 23:15 szerkesztette: admin