Ich versuche, einen Validierungstest mit Express-Validator durchzuführen.
bisher funktioniert alles gut außer isStrongPassword()
import {check} from "express-validator"
const val =
check('pwd')
.exists()
.withMessage('please enter the password')
.isStrongPassword({minLength: 6})
.withMessage('password is must be above six letters')
Router.post('/signup',val,SignUp)
const SignUp = async(req,res) => {
// if email and password are invalid throw the errors
const errors = validationResult(req).array();
if (errors && errors.length) {
console.log(errors);
res.status(400).json({ errors });
Mein Code ist so. Aber wenn ich ein Passwort anfordere, 1 Buchstabe oder 7 Buchstaben, unabhängig davon, wird nur ein Fehler aufgerufen. Es scheint nicht zu funktionieren, wer weiß, warum es passiert ist? Danke für Ihre Aufmerksamkeit
Lösung des Problems
isStrongPassword
hat Standardwerte
Entweder Sie überschreiben die anderen Eigenschaften mit 0 oder folgen einfach den Standardwerten.
IMHO sollte ein sicheres Passwort die Kombination aus Kleinbuchstaben, Großbuchstaben, Zahlen und Sonderzeichen berücksichtigen, nicht nur die Mindestlänge.
Ich hoffe, das beantwortet Ihr Problem.
Keine Kommentare:
Kommentar veröffentlichen