ここのコードに従いました-> https://github.com/jaredhanson/passport-local/tree/master/examples/express3ユーザーのローカル認証を追加します。
問題は、ユーザーを追加しようとすると、
だから私はこのルートを作成しました
app.get('/signup', function(req,res){
res.render('/signup');
});
app.post('/signup', function(req,res){
var body = req.body;
users.push(body);
res.redirect('/');
});
次に、フォーム付きのページです。
form(method='POST', action='/signup')
input(type='text', name='username', placeholder='username')
input(type='text', name='password', placeholder='password')
button.btn Register
ダミーDBこれは例の1つです
users = [
{id:1, username: 'test', password:'papapa'}
];
したがって、フォームで情報を送信すると、すべて問題ありませんが、新しく作成したユーザーでログインしようとすると、「エラー:ユーザーをセッションにシリアル化できませんでした」と表示されます。
serializeUserはこれです
passport.serializeUser(function(user, done) {
done(null, user.id);
});
passport.deserializeUser(function(id, done) {
findById(id, function (err, user) {
done(err, user);
});
});