• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

242
Vistas
Express Validator Schema add sequence custom validator

Is there anyway to add sequence check for userName

here is my schema validator:

const validatorSchema = {
 userName: {
    custom: {
      options: (value) => {
        if (dataUtils.isEmpty(value) || value === null) {
          return false;
        }
      },
      errorMessage: "userName field is empty",
    },
    custom: {
      options: (value) => {
        return User.findOne({
          where: {
            userName: value,
          },
        }).then((user) => {
          if (user == null) {
            return true;
          } else {
            return Promise.reject(user);
          }
        });
      },
      errorMessage: "User already existed",
    },
    custom: {
      options: (value) => {
        if (dataUtils.whiteSpaceChecker(value) && value != null) {//not allow whiteSpace between
          return false;
        }
      },
      errorMessage: "Wrong format userName",
    },
   
  },
}

My request body:

{
 "userName": "notExistedUser",
 "password": "samplePassword"
}

I do it by following this tutorial
But I want do more than check Existed User only and it didn't work as expected
Response always send

"errors": [
                {
                    "value": "notExistedUser",
                    "msg": "Wrong format userName",
                    "param": "userName",
                    "location": "body"
                }
          ]

Note: I use this schema in middleware

const { body, checkSchema, validationResult } = require("express-validator");

app.post('/signup', checkSchema(validatorSchema), (req, res) => {
    // Validate incoming input
    const errors = validationResult(req);

    if (!errors.isEmpty()) {
        return res.status(400).json({
            errors: errors
        });
    }

    next();
})

Thanks for reading this article,I hope can reach the solution for this !

almost 3 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda