Cum puteți face validarea intrărilor simplă și curată în aplicația dvs.
Shailesh Shekhawat

De ce avem nevoie de validare pe partea de server?
- Validarea clientului dvs. nu este suficientă și poate fi subversată
- Mai predispus la Man în atacuri medii, iar serverul nu ar trebui să aibă niciodată încredere în partea clientului
- Un utilizator poate dezactiva validarea JavaScript pe partea de client și manipula datele
Dacă ați construit aplicații web utilizând un cadru Express sau orice alt cadru Node.js, validarea joacă un rol crucial în orice aplicație web care necesită validarea interogării parametrului corpului de solicitare .
Scrierea propriei funcții middleware poate fi greoaie dacă
- doriți să vă deplasați rapid, menținând în același timp calitatea codului sau
- doriți să evitați utilizarea dacă (cer.corp.cap) sau dacă (cer.params.isCool) în funcția principală de controler în care definiți logica de afaceri
În acest tutorial, veți afla cum să validați intrările într-o aplicație Express.js utilizând un modul open source și popular numit express-validator.
Introducere în expres-validator
Definiția de pe Github spune:
Modulul implementează cinci API-uri importante:
- Verificați API
- API filtru
- API lanț de igienizare
- API lanț de validare
- API rezultat validare
Să aruncăm o privire la o rută de bază a utilizatorului fără niciun modul de validare pentru a crea un utilizator: /route/user.js
Acum în user controller /controllers/user.js
Codul de mai sus este doar un exemplu de bază de validare a câmpurilor pe cont propriu.
Puteți gestiona unele validări în modelul dvs. de utilizator utilizând Mongoose. Pentru cele mai bune practici, dorim să ne asigurăm că validarea are loc înainte de logica afacerii.
validatorul expres se va ocupa de toate aceste validări și de igienizarea intrărilor.
Instalare
Include modul în fișierul principal server.js:
Acum, utilizând expres-validator, /routes/user.js va fi astfel:
Aici userController.validate este o funcție middleware care este explicată mai jos. Acceptă numele metodei pentru care va fi utilizată validarea.
Să creăm o funcție middleware validate () în /controllers/user.js: