Nodejs基础之Cookie

  • 客户端第一次访问,空cookie ,服务器生成session存储到客户端的Cookie
  • 客户端第二次访问,携带包含session的cookie,服务器接受并验证
  • Cookie通常只有签名,而Session通常会加密
  • cookie-parser中间件的参数
    1. path: 浏览器端在此路径下才能访问到cookie
    2. maxAge: 过期时间,毫秒单位
    3. sign true 启动签名,防止别人改cookie
    4. 获取cookie时,可以向下访问,不能访问同级和上级
const express = require('express')
const cookieParser = require('cookie-parser') // 常用cookie中间件
const cookieEncrypter = require('cookie-encrypter')

var server = express()

server.use(cookieParser('sdg890sad7g')) // 验证签名,校验浏览器发送过来的cookie是否被篡改
server.use(cookieEncrypter('vxcv2342df')) //  加密cookie

server.use('/', function (req, res) {

req.secret = 'sdg890sad7g' // 设置cookie签名密匙,防篡改,没有加密效果
res.cookie('user', 'millions', {signed: true, path: '/form', maxAge: 30 * 24 * 60 * 60 *1000}) //  客户端设置浏览器的cookie
console.log(req.cookies) //未签名cookie
console.log(req.signedCookies) // 签名的cookie
res.clearCookie('user')// 删除cookie
res.send('ok')
})

server.listen(8081)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值