安装两个 包
cookie-parser; cnpm i -S cookie-parser
cookie-session; cnpm i -S cookie-session
下面针对cookie的 读写删除操作
const express=require('express');
// 引入 cookieparser 方便针对cookie 做操作
const cookieParser = require('cookie-parser');
// 引入 cookieSession 方便针对 session 做操作
const cookieSession = require('cookie-session');
const server = express();
//使用cookie中间件cookieParser,并且使用签名规则
server.use(cookieParser("ewt345regge"));
server.use('/aaa',function (req,res) {
// res.cookie(键名,值,options) ;种植cookie的方法;暂不需要用到cookieParser;
// path就是cookie种在当前的路径下面的;并且只在这个目录下可以读取;
// maxage就是 过期时间; 单位为毫秒;
//res.cookie('user','red',{path:'/aaa',maxAge:30*24*3600*1000});
// 设置签名规则;
req.secret="ewt345regge"
//使用签名规则
res.cookie("user1","blue",{signed:true,path:'/aaa',});
//使用过cookieParser后, 就可以访问未签名cookies
console.log(req.cookies);
//访问签名的cookies需要在上方cookieParser加入签名规则;就可以拿到签名以后的cookies了
console.log(req.signedCookies);
//清除cookie,填入清除的 cookie名字;
//res.clearCookie("user");
res.send("ok")
});
server.listen(8080)
针对session操作
const express=require('express');
// 引入 cookieparser 方便针对cookie 做操作
const cookieParser = require('cookie-parser');
// 引入 cookieSession 方便针对 session 做操作
const cookieSession = require('cookie-session');
const server = express();
// 配合 cookieSession ,防止劫持的 数组密钥;循环用的;否则报错;
const keys=['aa','bb','cc'];
//使用cookie中间件cookieParser
server.use(cookieParser());
//使用cookie-session 中间件 ,前置 就是cookieParser,传入keys。name;就是 到 客户端的显示名字
server.use(cookieSession({
name:"ses",
keys,
maxAge:30*1000*24*3600
}));
server.use('/aaa',function (req,res) {
// 查看此用户的访问次数;
if(!req.session.count){
req.session.count=1;
}else{
req.session.count++;
}
//删除session
//delete res.session;
//查看session;
console.log(req.session.count);
res.send("ok");
});
server.listen(8080)