我使用passport-local
策略使用电子邮件地址。这导致带有通用加号部分的gmail地址出现问题,例如。 example+test@gmail.com
。
使用
import passport from 'passport';
import passportLocal from 'passport-local';
import bcrypt from 'bcrypt';
var LocalStrategy = passportLocal.Strategy;
passport.use(new LocalStrategy({
// by default, local strategy uses username and password, we will override with email
usernameField: 'email',
passwordField: 'password',
passReqToCallback: true
}, function (req, email, pass, cb) {
// Store hash in your password DB.
console.log("Passwort:LocalStrategy:Email", email);
...
})
控制台日志为example test@gmail.com
。如果我用数据库中的空格替换加号,则登录有效。
如何在用户名中加上护照加号?
答案 0 :(得分:1)
我在我的项目中实施了本地护照,它确实允许加号 - 不需要额外的代码。你确定它的护照拒绝了+而不是其他一些验证中间件吗?