因為http會話的無狀态性,為了标記使用者的登入狀态,便出現了cookie。cookie分為很多種,有普通cookie、簽名cookie、json cookie等,這裡主要記錄下在express應用中如何配置使用cookie及session。
cookie、session的差別:
cookie資料存放在客戶的浏覽器上,session資料放在伺服器上。
cookie不是很安全,别人可以分析存放在本地的COOKIE并進行COOKIE欺騙 考慮到安全應當使用session。
session會在一定時間内儲存在伺服器上。當通路增多,會比較占用你伺服器的性能 考慮到減輕伺服器性能方面,應當使用COOKIE。
單個cookie儲存的資料不能超過4K,很多浏覽器都限制一個站點最多儲存20個cookie。
是以建議:将登陸資訊等重要資訊存放為session、其他資訊如果需要保留,可以放在cookie中
cookie
首先是app.js中的配置:
js路由中使用比較簡單:
session
app.js配置:
在路由中直接通過如下設定或者擷取session資料:
session的清除:
将session存儲到mongodb資料庫當中:
将session資料同步到redis中: