2017-12-14 12 views
0

私はノードjs(expressjs)Webサイトを持っています。このウェブサイトで私はサインインまたはサインアップできます。たとえば :ノードjsに投稿できません

router.get("/signin", function(req, res) { 
    res.render("signin"); 
}); 

そして:

router.post('/signin', passport.authenticate('login', { 
    succsessRedirect: '/', 
    failureRedirect: '/signin', 
    failureFlash: true 
})); 

また、私は、コードをサインアップしています。

router.post('/signup', function(req, res, next) { 
    var username = req.body.username; 
    var email = req.body.email; 
    var password = req.body.password; 
    var fname = req.body.fname; 
    var age = req.body.age; 

    User.findOne({ username: username }, function(err, user) { 
     if (err) { 
      return next(err); 
     } 
     if (user) { 
      req.flash('error', 'User already exists'); 
      return res.redirect('/signup'); 
     } 

     var newUser = new User({ 
      username: username, 
      email: email, 
      password: password, 
      fname: fname, 
      age: age 
     }); 
     newUser.save(next); 
    }); 
}, passport.authenticate('login', { 
    succsessRedirect: '/', 
    failureRedirect: '/signup', 
    failureFlash: true 
})); 

細かい作業はすべて、私はサインアップしてみてください、私のウェブサイトは、(私はMongoDBのパスポートJSサードパーティ製のミドルウェアを使用して)データベースで私をサインアップするが、パスポートはメインページに私をリダイレクトする必要があります「/ は表示されず、「Can not POST/signup」というエラーが表示されます。この問題はサインインでも発生します。あなたは私に何をするように提案できますか?前もって感謝します。

答えて

0

あなたがそれを助けない

newUser.save(function(err, newUser){return res.redirect('/');}); 
+0

ような何かにあなたのコード

newUser.save(next); 

を変更する必要があるようです:( – Genjik

関連する問題