私はnodejsとmongodbを使用しています。ログインプロセスは正しく機能しており、セッションがどのように機能するかについてもよく理解しています。ユーザーがログインしてデータベースからユーザーのプロファイルを取得した後、次に何が起こらなければならないのか混乱していますか? ユーザーを認証することを送信するloginPostがあり、エラーがなければ、現在userProfileと呼ばれる別のページにリダイレクトされます。ただし、データベースからユーザーの実際のプロファイルを取得するにはどうすればよいですか? ログイン後またはloginPost機能中にデータベースにクエリを実行すると思いますか、それともjadeファイルをレンダリングする単純なexports.userProfileページである、私が呼び出す新しいページで発生する必要がありますか?
loginPost に使用するコードは次のとおりです。
exports.loginPost = function(req, res, next) {
passport.authenticate('local', function(err, user, info) {
if (err) { return next(err) }
if (!user) { return res.redirect('loginError'); }
req.logIn(user, function(err) {
if (err) { return next(err); }
return res.redirect('userProfile');
});
})(req, res, next);
};
セッションを含めるように更新:
app.use(express.cookieParser());
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.session({ secret: 'this is a secret'
}));