nodejs之express中间件cookie-parser使用

知识点:
 * 1、domain的使用,.aaa.com的域名都共享这个cookie信息
 *          res.cookie('username',"cookie value",{maxAge:60000,domain:'.aaa.com'});
 * 2、获取所有cookie,设置cookie
 *          req.cookies /  res.cookie("cookieName","cookieValue")
 * 3、path设置,使得cookie只能在/get路由下才可以获取
 *          res.cookie('username',"cookie value",{maxAge:60000,path:'/get',domain:'.aaa.com'});
 * 4、httpOnly:true
 *          res.cookie('username',"cookie value",{maxAge:60000,httpOnly:true,domain:'.aaa.com'});
 *          表示只能在nodejs服务端可以操作cookie,不能使用js脚本操作
 * 5、signed:true
 *          cookie加密
 *  cookie加密:
 *      1、在保存的时候进行加密
 *      2、cookie-parser中间件中有一个signed:true属性
 *          第一步:app.use(cookieParser("123456"));//使用signed时,要穿一个加密盐
 *          第二部:res.cookie("username","cookie value",{maxAge:60000,signed:true});
 *          第三部:console.log(req.signedCookies);  或者  console.log(req.signedCookies.username);
1、先安装express以及中间件cookie-parser
  npm install express
  npm install cookie-parser 
2、案例如下
var express = require('express');
var cookieParser = require('cookie-parser'); //引用中间件
var app = new express(); //创建实例

app.use(cookieParser());//设置中间件
app.get('/set',function (req,res) {
    res.cookie("username",'yangwenjie',{maxAge:60000}); //设置cookie和过期时间
    res.send("set cookie sucessful");
})

app.get('/get',function (req,res) {
    console.log(req.cookies); //拿取cookies
    res.send("set cookie sucessful");
})
app.get('/',function (req,res) {
    res.send("index");
})

app.listen('8001');

 3、获取和设置cookie的demo

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

app.use(cookieParser("123456"));//使用signed时,要穿一个加密盐

app.get('/',function (req,res) {
    res.cookie("username","cookie value",{maxAge:60000,signed:true});//设置cookie
    res.send('index');
})

app.get('/get',function (req,res) {
    console.log(req.signedCookies.username);//获取特定cookie值
    res.send(" get cookie value");
})
app.listen('8002');

 

posted @ 2019-02-19 22:51  小白啊小白,Fighting  阅读(2327)  评论(0编辑  收藏  举报