知识点:
* 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');