express 4.2.0 sessionとcookiesの使用

2764 ワード

expressはnodeに基づく.jsのwebフレームワークですが、4.xxバージョン以降、session管理やcookiesなどの多くのモジュールはexpressに直接含まれるのではなく、単独でダウンロードして追加する必要があります.
人の更新日志などを见るのに気づかなかったので、1、2日悩んだが、今夜やっと见つけた.セッションをredisに保存すると噂され、すぐにガンダムになった.の記録しておきますが、必要なコードは以下の通りです.
var express = require('express');
var session = require('express-session'); //     session,          
var cookieParser = require('cookie-parser'); //     cookie,          
var RedisStore = require('connect-redis')(session);
var app = express();

//    Cookie
app.use(cookieParser('xiaocc_'));

//    Session
app.use(session({
  store: new RedisStore({
    host: "127.0.0.1",
    port: 6379,
    db: "test_session"
  }),
  resave:false,
  saveUninitialized:false,
  secret: 'keyboard cat'
}))

app.get("/", function(req, res) {
  //console.log(session);  //  n  ,           ,    ,
     log,          ~
//  var session = req.session;
  session.count = session.count || 0;
  var n = session.count++;
  res.send('hello, session id:' + session.id + ' count:' + n);
});

app.listen(3000);

console.log('Web server has started on http://127.0.0.1:3000/');

上記の例では、私のプロジェクトファイルに含まれるモジュールは次のとおりです.パッケージをインポートしていない場合は、手動でインポートをダウンロードする必要があります.
1 .body-parser2 .connect-redis3.cookie-parser4.debug 5.express6. express-session7. JAde(これは現在使用されているテンプレートによって異なる)8.morgan 9.redis 10.redis-server 11.static-favicon
私が使用しているexpressバージョンは4.2.0です.
4.**ならバージョン以前は、試したことがありません.問題があったらまた解決します~(問題を解決するためだけなら、ここまで来れば、下を見なくてもいいので、以下に雑談を注釈します.~~~~)
提案:cookiesとsessionの原理と役割を忘れた場合は、まず関連ネットワークの知識を補充したほうがいいです.
ps:このシーンは連想と記憶に役立ちます.
1つの茶屋、3つのタイプの顧客:それぞれ甲乙丙3種類です.茶屋は活動をします:5杯の竜井を飲んで1杯の茅の先を送ります
甲類:この茶屋に行くたびに、これまでこの茶屋に行ったことがあるかどうかとは何の関係もありません.もちろん、お客様もこの割引を受けにくいです.(httpプロトコル接続の無状態)
次のことも可能です.
甲が行くたびに、誰であろうと、牛迫した店員はすぐにその顧客の歴史的な消費記録を覚えることができ、この割引活動を簡単に楽しむことができます.(httpプロトコルの上に立って、httpの具体的な実現を捨てて、状態があるようです.はい、店員が牛を追い詰めているように見えますが、背後にはとっくに顧客一人一人の体の特徴に基づいて記録されているのかもしれません.他の人が表現している牛を追い詰めているので、私たちは他の人が私たちが見えないところでどれだけの授業をしたかを感じることができません(私自身に書いたこの文)
乙:
乙は初めてお茶を飲みに行ったとき、店員からポイントカードをもらいました.このポイントカードはお客様が保管しています.その後、お客様が消費するたびに、カードに記録します.(cookie)
丙類:
丙は初めてお茶を飲みに行く時、店員は彼に磁気カードをあげて、この磁気カードは顧客の記録があって、しかし後で顧客の毎回の消費の記録は茶屋の中に存在します.考えてみれば、お客様がカードを要求しない限り、茶屋は簡単にお客様の消費記録を削除しないだろう.もう一つの状況は、あるお客様が長い間茶屋にお茶を飲みに来ていないことだ.
最後に、次のリンクのブログに感謝し、この問題を解決するために指導を提供してくれました.
http://blog.csdn.net/liyi109030/article/details/35271389
sessionとcookiesの紹介では、以下のリンクの記事を参考にして、感謝の意を表します.
http://www.2cto.com/kf/201206/135471.html
ちょっと話がずれて、ちょっと散らかって、この記録だけで、以上~
                                                                                                                                xiaocc