cookie加密

时间:2021-7-5 作者:qvyue

上一节简单介绍怎么使用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 模板。

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。