req.body检查它是否包含特定字符

时间:2017-07-20 18:48:08

标签: javascript node.js express

在我的注册页面上,我使用body-parser来处理req.body.username。如何检查特定字符,如果找到,则拒绝注册表格?基本上不允许用户创建包含字符的用户名:

Passport.js:

   passport.use('local-signup', new LocalStrategy({
    usernameField: 'username',
    passwordField: 'password',
    gameusernameField: 'username',
    nicknameField: 'nickname',
    passReqToCallback: true
},

function(req, username, password, done) {

    // here you read from req
    const email = req.body.email;
    const nickname = req.body.nickname;
            newUserMysql.email = email;
            newUserMysql.password = password;
            newUserMysql.username = username;
            newUserMysql.nickname = nickname;

Server.js:

//For BodyParser
app.use(bodyParser.urlencoded({
    extended: true
}));
app.use(bodyParser.json());
app.use(flash());

// For Passport
app.use(session({
    secret: 'keyboard cat',
    resave: true,
    saveUninitialized: true
})); // session secret
app.use(passport.initialize());
app.use(passport.session()); // persistent login sessions

1 个答案:

答案 0 :(得分:1)

if (req.body.username.indexOf('?') > -1) {
    //reject
} else {
    //accept and continue
}