知識點:
* 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');