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);
一、先安裝express以及中間件cookie-parser
  npm install express
  npm install cookie-parser 
二、案例以下
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');

 三、獲取和設置cookie的demonode

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');
相關文章
相關標籤/搜索