¿Recibir JSON en método get Node.js y passport.js?

Estado

🔒 Este tema está cerrado para nuevas respuestas.

⏰ Solo el creador del tema puede solicitar la reapertura de sus propios temas, pero únicamente dentro de los 60 días previos a la última actualización.

Wizard Seguir

Xi
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
27 Ago 2011
Mensajes
4.256
En la autenticación local con passport deseo recibir distintos tipos de respuesta según sea el caso, tengo el siguiente código:

Insertar CODE, HTML o PHP:
    // Login user
    router.get('/login', (req, res)=>{
    	res.send({message:'Usted debe iniciar sesion con su email y su clave'});
    });

    //Funciones para la autenticacion con passport-local
    passport.use(new LocalStrategy({
    	usernameField: 'email'
    }, (username, password, done) => {
    	User.findOne({'email': username }, (err, user) => {
    		if (err) { return done(err); }
    		if (!user) {
    			console.log('Usuario incorrecto.');
    			return done(null, false, { message: 'Usuario incorrecto.' });
    		}
    		if (user.password != md5(password)) {
    		///////////////////////////////////
    		// Aumenta el atributo try del esquema si la password es incorrecta
    		user.try++;
    	    if (user.try < 5) {
    	    	
    		    var update = {
    		    	name: user.name,
    		    	lastName: user.lastName,
    		    	email: user.email,
    		    	password: user.password,
    		    	registerForm: user.registerForm,
    		    	birthDate: user.birthDate,
    		    	try: user.try,
    		    	active: true
    		    };
    
    		    User.findByIdAndUpdate(user._id, update, (err, TaskUpdated) => {
    		        if (err) {
    		            res.status(500).send({ error: `Error al actualizar. Error ${err}` });
    		        }
    		    });
    	    } else {
    	    	var update = {
    		    	name: user.name,
    		    	lastName: user.lastName,
    		    	email: user.email,
    		    	password: user.password,
    		    	registerForm: user.registerForm,
    		    	birthDate: user.birthDate,
    		    	try: user.try,
    		    	active: false
    		    };
    
    		    User.findByIdAndUpdate(user._id, update, (err, TaskUpdated) => {
    		        if (err) {
    		            res.status(500).send({ error: `Error al actualizar. Error ${err}` });
    		        }
    		    });
    	    	
    	    	if (!user.active) {
    	    		console.log('Tu usuario ha sido bloqueado temporalmente');
    	    	}
    	    }
    		///////////////////////////////////
    			
    
    		}
    			if (user.try < 5) {
    				console.log(`Se accedió correctamente`);
    				return done(null, user);
    			} else {
    				console.log(`Amigo tienes ${user.try} intentos de login fallidos`);
    				//return done(null, false, { message: 'Ha superado el limite de intentos' });			
    			}
    			
    			return done(null, false, { message: 'Clave incorrecta.' });
    		
    	});
    }));

Deseo poder devolver una respuesta si se introdujo mal la contraseña, si el máximo de intentos permitidos se ha alcanzado (5 intentos), etc.

Pero si envío las respuestas directamente desde la función de passport estas no llegan, alguien sabe como puedo hacer para enviar las respuestas que deseo? O hacerlas llegar al método get?
 

Wizard

Xi
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
27 Ago 2011
Mensajes
4.256
Cierro el tema ya que nadie en el foro lo sabe :encouragement:
 
Estado

🔒 Este tema está cerrado para nuevas respuestas.

⏰ Solo el creador del tema puede solicitar la reapertura de sus propios temas, pero únicamente dentro de los 60 días previos a la última actualización.

Arriba