2013/09/03更新

[NodeJS] expressでCookieを利用する方法

このエントリーをはてなブックマークに追加            

こんにちは、@yoheiMuneです。
最近は、node.jsのexpressというフレームワークを用いて、絶賛サーバー実装を行っています。 その実装で学んだ、expressに関する実践的な内容を、これからブログに色々と書いて行きたいと思います。

今日は、expressでのCookieの設定、取得を書きたいと思います。

画像



expressでCookieを使う為の設定

まずは、Cookieを使う為の設定を行います。expressのエントリーポイントとなるapp.js内で、以下のように記載します。
app.use(express.cookieParser());
ポイントとしては上記の記述をrouterより先に書くことです。具体的には以下です。
app.use(express.cookieParser());
// このrouter設定より前に書くことで、有効になる。
app.use(app.router); 
これでCookieを使えるようになりました。



Cookieを設定する

まずはCookieを設定します。例えば以下の例では、「/」でアクセスした際に、test=aaaというCookieを設定します。
app.get('/', function (req, res) {

    // Cookieを設定する
    res.cookie('test', 'aaa', {maxAge:60000, httpOnly:false});

    // HTMLを返却します
    res.render('index');
});
res.cookieのメソッドは、Key, Value, Optionsを受け取ります。 OptionsにはCookieの設定を色々と指定できるようです。
これでCookieの設定が完了しました。Chromeなどで該当URLにアクセスし、 ディベロッパーツールでCookieがブラウザに保存されていれば正常にCookieの設定が出来ています。



Cookieを取得する

続いてCookieを取得する処理です。Cookieの設定と同様に簡単に行えます。
app.get('/search', function (req, res) {

    // Cookieの取得(Keyにtestを指定しています)
    var test = req.cookies.test;

    // 後続の処理は省略...
});
こんな感じでCookieの取得を行うことが出来ます。簡単で良いですね!!



最後に

Node Expressは今回初めて使ったのですが、色々と便利で良いですね! 個人的にはJavaScriptは好きな言語なので、それでサーバー実装が出来るのはありがたい気分です。

最後迄ご覧頂きましてありがとうございました。





こんな記事もいかがですか?

RSS画像

もしご興味をお持ち頂けましたら、ぜひRSSへの登録をお願い致します。