Как исправить ошибку формы сообщения не отображаются (NodeJS) - PullRequest
0 голосов
/ 02 февраля 2019

Мои сообщения об ошибках формы со страницы входа не отображаются (неизвестный пользователь, неверный пароль, недостающие учетные данные) Но на моей странице регистрации появляются сообщения об ошибках (требуется имя пользователя, требуется электронная почта ... и т. Д.)

passport.use(new LocalStrategy(
    function(username, password, done) {
        User.getUserByUsername(username, (err, user) => {
            if(err) throw err;
            if(!user) {
                return done(null, false, {message : 'unknown user'});
            }
            User.comparePassword(password, user.password, (err, isMatch) => {
                if(err) throw err;
                if(isMatch) {
                    return done(null, user);
                } else {
                    return done(null, false, {message:'invalid apssword'});
                }
        })
    });
}));

router.post('/login',
passport.authenticate('local', {successRedirect:'/', failureRedirect:'/users/login', badRequestMessage: 'Missing credentials !!' , failureFlash: true}),
(req, res) => {
    res.redirect('/');
})

И мой логин html

<center>

<ul style="list-style-type: none;">
    <li>
        <a style="text-decoration:none;" href="/users/register">Signup</a>
        <a style="text-decoration:none;" href="/users/login">Login</a>
    </li>
</ul>

<h2>Login</h2>
{{#if errors}}
    {{#each errors}}
        <div>{{msg}}</div>
    {{/each}}
{{/if}}
<form method="post" action="/users/login">
    <div>  
        <input type="text" name="username" placeholder="Identifiant">
    </div>
    <div>
        <input type="password" name="password" placeholder="Mot de passe">
    </div>
    <button type="submit">Login</button>
</form>

</center>

Пожалуйста, помогите

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...