0
うまく動作する基本的なユーザー登録フォームを作成しましたが、確認パスワードフィールドを追加する必要があります。パスポートでのパスワード確認
次のように私のフォームは次のとおりです。ユーザーのヒットが提出したときに
<div class ="container form">
<div class="jumbotron form"><h2><i class="fa fa-user-plus" aria-hidden="true"></i> Signup</h2></div>
<form action = "/register" method="POST">
<div class="form-group">
<i class="fa fa-user" aria-hidden="true"></i>
<label for="username">Username</label>
<input type = "text" class = "form-control" placeholder = "Enter username" name="username">
</div>
<div class="form-group">
<i class="fa fa-key" aria-hidden="true"></i>
<label for="password">Password</label>
<input type = "password" class ="form-control" placeholder = "Enter password" name="password1">
</div>
<div class="form-group">
<i class="fa fa-key" aria-hidden="true"></i>
<label for="password">Confirm password</label>
<input type = "password" class ="form-control" placeholder = "Enter password" name = "password">
</div>
<div class="form-group">
<i class="fa fa-picture-o" aria-hidden="true"></i>
<label for="img">Image</label>
<input type = "text" class ="form-control" placeholder = "Enter image URL" name = "image">
</div>
<button type ="submit" class="btn btn-primary btn-lg">Signup</button>
</form>
</div>
だから、私は明らかに2つのパスワードの入力が一致する必要があり、そうでない場合はエラーがスローされます。
私はauthenitcationのためにPassportを使用しています。私は次のセットアップがあります。
// passport configuration
app.use(require("express-session")({
secret: "maidenJones",
resave: false,
saveUninitialized: false
}));
app.use(passport.initialize());
app.use(passport.session());
passport.use(new LocalStrategy(User.authenticate()));
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
app.use(expressSanitizer());
app.use(function(req, res, next){
res.locals.currentUser = req.user;
res.locals.error = req.flash("error");
res.locals.success = req.flash("success");
next();
});
が登録ルート:あなたの登録ロジックは、パスポートLocalStrategy内を移動する必要があるパスワードの確認チェック
感謝。私は完全に理解しているか分からない。これにより、2つのパスワードフィールドが一致することが確認されます。これを私のコード – DaveB1
に実装する方法がわからない場合は、jqueryまたはangleを使用して送信する前に、クライアント側でフォームを検証する必要があります。それが事実ではなく、あなたがサーバ側でそれを検証したいのであれば(なぜそれが見えないのか)、あなたはまだローカル戦略の中でそれをしなければならない。 –
申し訳ありませんが、私はこれに少し初心者です。だから本質的にパスワード確認フィールドは提出されませんでしたか?それは単に比較するフィールドですか? – DaveB1