既然我应该设置正确的代码,为什么我的用户没有出现在我的数据库中?

问题描述

所有要求都是添加页面加载的,当我注册一个新用户时,它只是不会将新用户保存到数据库中。我正在学习教程/训练营,我已经得到了下面的代码。任何人都可以让我知道这似乎是一个问题,在教程中给出的代码对编码器来说是正确的。

app.use(session({
  secret: 'keyboard cat',resave: false,saveUninitialized: true,cookie: { secure: true }
}));

app.use(passport.initialize());
app.use(passport.session());

const url = 'mongodb://127.0.0.1:27017/userDB'
mongoose.connect(url,{useNewUrlParser:true}); 
mongoose.set("useCreateIndex",true);

const userSchema = new mongoose.Schema ({
    email: String,password: String
});

userSchema.plugin(passportLocalMongoose);


const User = new mongoose.model("User",userSchema);

passport.use(User.createStrategy());

passport.serializeUser(User.serializeUser());

passport.deserializeUser(User.deserializeUser());


app.get("/",function(req,res){
  res.render("home");
});

app.get("/login",res){
    res.render("login");
  });


  app.get("/register",res){
    res.render("register");
  });

  app.get("/secrets",res){
if (req.isAuthenticated){
  res.render("secrets");
} else {
  res.redirect("/login")
}
  })

app.post("/register",res){

User.register({username: req.body.username},req.body.password,function(err,user){

  if(err){console.log(err);
  res.redirect("/register")}
  else {
    passport.authenticate("local")(req,res,function(){
      res.redirect("/secrets")
    })
  }

})

  




});

app.post("/login",res){



  
 
})

app.listen(3000,function(){
  console.log("Server started on port 3000.");
});

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)