express cookie-session

1550 ワード

expressのミドルウェアはconnectモジュールに基づいていますので、関連文書は直接参照できます。http://www.senchalabs.org/connect/
cookie-sessionのミドルウェアを使用していますが、困惑していますので、下記のように記録します。
  • cookie Sessionの前にcookie Paserミドルウェア
    var express =require('express');
    var app = express();
    app.use(express.cookieParser('S3CRE7'));
    app.use(express.cookieSession());
    
    を使用する必要があります。ミドルウェア伝達パラメータは以下の通りです。key:cookieキーで、PHPのsession_に似ていると感じます。id;secret:cookie値を暗号化する文字列は、cookie Paserのsecret機能と全く同じであり、cookie Paserがsecretパラメータに入って来ていない場合、ここに入る必要がある。個人の角度は主観的な感覚のために、二つの異なる値を採用しています。cookie:クッキーの関連パラメータ、すなわちKVペア以外のexpire/maxAge、httpOnly、path値proxyを設定する:逆エージェントを信頼するかどうか、デフォルトfalse
  • を解析した後、req.sessionを通じてアクセス値req.session.name = 'jason' res.send('')を通じてセッションのKVペアが設定されています。ここで比較的困惑します。中間部品の実行は一方的で、後ろのアプリケーション層にデータの解析を行いますが、セッションを設定するのは逆です。googleが検索した結果、connectミドルウェアがpatchを通じてhttp.ServerResponseにクッキーを更新するためのheader eventを追加したことが原因です。
       res.on('header', function(){
          res.setHeader('Set-Cookie', cookie.serialize(key, ''));
       }
    
    は登録検証をシミュレートします。
    function loginCheck(req,res,next){
          if(req.session.name){
          next();
      }else{
          res.send({"info":"unlogin"})
      }
    }
    
  • はたぶんこのようにして、cookieを使用してsession値を保存し、NODEjsのメモリ保存sessionredismemcacheの使用方式は後で
  • を放出する。