路由在地址栏中重复

时间:2016-11-11 14:17:02

标签: node.js mongodb redirect mongoose routes

我是MEAN堆栈的新手。我希望我的路线在地址栏中看起来像这样。 '本地主机:3000 /用户/登录', '本地主机:3000 /用户/注册', '本地主机:3000 /供应商/登录', '本地主机:3000 /供应商/注册'。我为这样的用户配置了我的路由。

 var userRoutes = require('./routes/user');
 app.use('/user', userRoutes);

,user.js中的路由如下。

router.post('/signup', function(req, res){
    var user = new User();

    user.username = req.body.username;
    user.email = req.body.email;
    user.password = req.body.password;
    user.picture = user.avatar();
    user.address = req.body.address;

    User.findOne({email: req.body.email}, function(err, existingUser){
        if(existingUser){
            req.flash('errors', 'Account with this email Id already exists!!');
            return res.redirect('/signup');
        }else{
            user.save(function(err, user){
                if(err) return next(err);

                req.logIn(user, function(err){
                    if(err) return next(err);
                    res.redirect('/profile');
                })
            });
        }
    });
});

在上面的代码中,如果使用注册的email-id,我将被重定向到'localhost:3000 / signup',但我想将其重定向到'localhost:3000 / user / signup'。如果我按照以下方式放置res.redirect代码

req.flash('errors', 'Account with this email Id already exists!!');
            return res.redirect('user/signup');

然后我被重定向到'localhost:3000 / user / user / signup'。如何将其重定向到“localhost:3000 / user / signup”

0 个答案:

没有答案