1

LocalStrategy がどのように機能するかを理解したいです。

これが私のサーバーファイルの一部です:

var passport = require('passport');
var express = require('express');
/* other initializations */
var app = express();

passport.use = new LocalStrategy(
        function(email, password, done) {
            module.exports.findByUsername(email, function(err, user){
                if (err) throw err;
                if(!user) {
                    done(null, false, { message: 'Incorrect username.' });
                }
                else if(user.password != password) {
                    done(null, false, { message: 'Incorrect password.' });
                }
                else {
                    return done(null, user);
                } 
            });
        }
    )

app.post("/login" 
    , passport.authenticate('local',{
        successRedirect : "/",
        failureRedirect : "/login",
    }) ,
    function(){
        console.log("post /login");
    }
);

ここで、クライアント ブラウザから http post リクエストを に送信していhttp://localhost:8000/loginます。認証が成功した場合、ユーザーはルート ページにリダイレクトされ、"/"失敗した場合、ユーザーは再度ログイン ページにリダイレクトされます。

問題は、新しい LocalStrategy を定義するときに、function(email,password, done){...}. ただし、この関数を呼び出すときにapp.post("/login", ...){...}、メールとパスワードのパラメーターを渡すにはどうすればよいですか?

4

1 に答える 1