问题描述
我正在尝试仅使用电子邮件进行注册(不使用用户名,密码等),以本地护照对用户进行身份验证
我尝试更改大多数必填字段以接受电子邮件,但是当尝试使用电子邮件进行注册时,我继续在终端中收到“ MissingUsernameError”。我是编码的新手,绝对是使用护照/身份验证的新手,所以我们将不胜感激!
这是我当前的参考代码:
设置护照:
passport.serializeUser(User.serializeUser()); password.deserializeUser(User.deserializeUser());
passport.use(新的LocalStrategy({ usernameField:'email', },User.authenticate()));
注册发布路线:
app.post(“ / subscribe”,function(req,res){
User.register(new User({username: req.body.email}),function(err,user){
if(err){
console.log(err);
return res.render("subscribe")
}
passport.authenticate("local")(req,res,function(){
res.redirect("home")
})
})
});
var mongoose = require(“ mongoose”); var PassportLocalMongoose = require(“ passport-local-mongoose”);
var UserSchema = new mongoose.Schema({ 用户名:字符串 });
UserSchema.plugin(passportLocalMongoose,{usernameField:“ email”});
module.exports = mongoose.model(“ User”,UserSchema);
非常感谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)