Closed Maeggi closed 5 years ago
Test with two findOne, not working. Error:
Caught exception: Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
passport.use('local-signup', new LocalStrategy({ usernameField: 'username', passwordField: 'password', emailField: 'email', passReqToCallback: true }, function(req, username, email, done) { if(req.session.user && req.session){ return done(null, false, {message: 'User is already logged in, signup illegal'}); } User.findOne({ email }, function(err, user) { if (err) return done(err); if (!user) { return done(null, false, { message: 'This email already exists' }); } }); User.findOne({ username }, function(err, user) { if (err) return done(err); if (!user) { return done(null, false, { message: 'This usernme already exists' }); } var newUser = new User(); newUser.userName = req.body.userName; newUser.email = req.body.email; newUser.hash_password = bcrypt.hashSync(req.body.password, 10); newUser.save(error => { if (err) { console.log(err); res.sendStatus(500); return done(null, false, { message: 'Error' }); } return done(null, newUser); }); }); } ));
This code will end up calling the done callback twice.
done
Test with two findOne, not working. Error: