Node05 - cookie、session

1、cookie :在浏览器保存的 一些数据,每次请求都会带过来,*注意   空间非常小、安全性非常差、校验cookie是否被篡改过

        (01)、cookie读取  =>  

          1、下载和引入  cookie-parser 、cookie-session

          2、server.use(cookieParser(“秘钥”));

      (02)、cookie发送 =>  res.cookie(名字,值{path: '/', 有效期,是否签名})

          1、调用 => server.use(cookieParser());

          2、发送cookie  res.cookie('user', 'bule', {path:'/aaa’ (地址),maxAge:(过期时间),signed:签名})

          3、req.secret:cookie 签名(防止篡改)

          4、signedCookies:签过名的cookie、

      (03)、删除cookie =>  res.clearCookie(名字);          

const express = require('express');
const cookieParser = require('cookie-parser');

var server = express();
server.listen(8081);
server.use(cookieParser());
server.use('/aaa/a.html', function(req, res){
    req.secret='fasgasdasdafa';
    //path设置需要和use的地址相同才可以。signed: 是否需要签名
    res.cookie("name", "bule", {path: '/aaa', maxAge: 30*24*3600*1000, signed: true});
    console.log(req.cookies);//未签名cookie
    console.log(req.signedCookies);//签名cookie
    res.send('ok');
});          

2、session:保存数据,数据保存在服务端;*注意    安全  、无限、存在服务器、不能独立存在,基于cookie

    (01)、session基于cookie实现的;

 1 const express = require('express');
 2 const cookieParser = require('cookie-parser');
 3 const cookieSession = require('cookie-session');
 4 
 5 var server = express();
 6 server.listen(8082);
 7 
 8 var arr=[];//session 秘钥,加强session破解难度
 9 for (var i=0; i < 100000; i++){
10     arr.push('src_'+Math.random());
11 }
12 
13 server.use(cookieParser()); //session需要依赖于cookie-parser,所以需要先引入cookie-parser
14 server.use(cookieSession({
15     keys: arr, //session 秘钥,数量越多破解难度越大
16     maxAge: 2*3600*100 //session 过期时间
17 }));
18 server.use('/', function(req, res){
19     //req.session[可以任意放置内容],例:查看登录次数
20     if (req.session['count'] == null){
21         req.session['count'] = 1;
22     }else{
23         req.session['count']++;
24     }
25     console.log(req.session['count']);
26     res.send('ok');
27 });

    (02)、session劫持

    (03)、delete res.session  删除session

 

posted @ 2017-12-08 15:43  FallenLunatic  阅读(146)  评论(0编辑  收藏  举报