0

簡単なアプリケーションを書いています。ログイン/パスワード画面を作成しました。これは、セッション変数を設定するだけです。

if( docs.password == req.body.password ) {
   errors.push({ field:'password', message: 'Password Match!', mustChange: false } );
   res.json( { response: 'OK' } , 200);
   req.session.loggedIn = true;
   req.session.login = req.body.login;

ログインが完了すると、クライアントは実際のアプリケーションにリダイレクトされます(通常どおり)。ただし、その時点で、クライアントはログインに使用したログイン名を認識しなくなります。(私はブラウザで実行されるJavascriptについて話している)

ご覧のとおり、セッションにユーザー名を保存しています。ただし、クライアントが「アプリケーション」HTMLページをロードするとき、それは新しいJavascriptを使用した新しいページであるため(少し前にログインに使用したユーザー名を認識しないため)、独自のログイン名はありません。

セッションにあるので、ページのHTMLのどこかに(ページの本文のグローバルJS変数のように)埋め込むことができますが...

これは「通常」どのように行われますか?これについて行くのに良いパターンは何ですか?

メルク。

4

1 に答える 1

0

Express 3では、これが適切に行う方法です。
https://github.com/dotcloud/express-on-dotcloud/blob/master/app/app.js#L65

すべてのルートのテンプレートにセッションを送信するミドルを設定します。

于 2012-08-16T08:25:02.680 に答える