http-无状态的
- cookie :在浏览器保存一些数据,每次发起请求都会带过来
不安全 4K
- session :保存在服务端
安全的
基于cookie 实现的
隐患:session_id
隐患:session 劫持
cookie
1.读取
npm install cookie-parser 读取cookie
2.发送
res.cookie('name','key',{path:'/aaa',maxAge:3600*100,signed:true})
path:向上继承
signed:true 设置签名 杜绝修改
req.secret ='aaaa' //密钥 签名
signed = true/false
签名版本 console.log(req.signedCookies)
不签名版本 console.log(req.cookies)
读取
server.use(cookieParser())
console.log(req.signedCookies)
console.log(req.cookies)
删除
res.clearCookie(‘名’)
注意:1.省得用
2.安全性差
cookie加密
cookie-encrypter 加密解密
const express =require('express')
const cookieParser = require('cookie-parser')
var server = express()
server.use(cookieParser())
server.use('/',function (req,res) {
console.log(req.signedCookies)
console.log(req.cookies)
req.secret='wwewaeaw'
res.cookie('user','zhangsan',{path:'/aaa.html',maxAge:3600*10,signed:true})
res.send('ok')
res.clearCookie('user')
res.end()
})
server.listen(8080)
session
npm install cookie-seesion
如何写?
server.use(cookie-perser())
server.use(cookieSession({
keys : [‘aaa’,’bbb’,’ccc’]//循环使用,越多越安全
,name :’a’
,maxAge:” //有效期
}))
如何读?