cookie加密

上一節簡單介紹怎么使用express框架。那么這小節,我們學習新的東西,cookie的一些常用操作。
cookie可以臨時存儲的特點,由服務端提供給前端的一個簡單的數據。

  • cookie 小只有4kb,不安全。但是也有它好的一面,它可以兼容所有的瀏覽器,可以記錄在瀏覽器里。
  • cookie常見的場景,就是網站的“下一次自動登錄”、“上次觀看的位置等”

express中使用:

res.cookie(key,value,{path:'/mylouteraddress',maxAge:毫秒})

注:path代表地址,瀏覽器里的地址。
我們在express框架里可以使用一個 cookie-parser 中間件來處理。

cookie-parser

var express = require('express');
var static = require('express-static');
var cookieParser = require('cookie-parser');

var server = express();
server.listen(2573);
//server.use(cookieParser('asdfghjklpoieuwy3719edheu'));// 使用中間件
server.use('',function(req,res,next){
    //res.cookie('test','Anny');
    var json = req.cookies;
    //for(var i in json){
    //  res.clearCookie(i);// 清空
    //}
    req.secret = 'asdfghjklpoieuwy3719edheu';// 加密
    res.cookie('test','Anny',{signed:true}); // signed:true 加密
    res.send('ok');

    //res.cookie('test','Anny',{maxAge:365*24*3600*1000});
    //res.cookie('password','123456',{maxAge:365*24*3600*1000});
    //res.send('ok');
    //next();
});

signed:true 時,在瀏覽器查看cookie時密碼是亂碼,達到了我們的要求。
由于是可逆的,我們也可以還原:

server.use(cookieParser('asdfghjklpoieuwy3719edheu'));// 使用中間件

總結:
cookie雖然存儲方便,但是也要注意數據的安全性,對于比較敏感的數據,我們通常建議保存在服務端,給cookie加密,給cookie添加時間限制,例如超過多久就失效或自動刪除key等.

下一小節我將分享下 jade 模板。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容