Express Session 介紹

Session 為儲存在伺服器的暫存資料,此暫存可以放在記憶體或資料庫上
亦可在 Cookie 儲存一個 Session ID 可以用來跟 server 核對身分拿取資料


套件安裝

處理 Session 可以使用 express 提供的一個套件 express-session 連結
打開終端機輸入 npm install express-session ,安裝好了之後
就在 app.js 引入

1
2
3
4
5
6
7
var session = require('express-session');

app.use(session({
secret: 'keyboard cat',
resave: true,
saveUninitialized: true
}))

這時候打開 Cookie 會有一個 connect.sid 的 name,且 value 為一串亂碼就代表成功了
那串亂碼即為向 server 要資料的鑰匙 ID


session 寫入資料

session 寫入資料其實很簡單

1
2
3
4
5
6
7
router.get('/', function(req, res, next) {
req.session.name = 'Jerry';
req.session.email = 'jerry@gmail.com'
// 可用 console 查看是否有寫入
console.log(req.session);
res.render('index', { title: 'Express' });
});