欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

express中使用cookie

程序员文章站 2024-03-20 14:03:52
...

express中使用cookie

利用cookie-parser中间件,可以使用cookie进行信息的缓存

  • 第一步 npm install cookie-parser --save
  • 第二步 引入中间件 const cookieParser = require("cookie-parser")
  • 第三步 使用中间件 app.use(cookieParser())
// 设置cookie 键名 键值 配置
res.cookie("username", "zhangsan", {
    maxAge: 1000 * 60 * 60,
    path: "article", //只有article路由能够访问
    domain: '.33info.com', // park.33info.com 和 iot.33info.com 都能访问
})

// 获取cookie
req.cookies.username

cookie-parser的配置项参数分析

  • maxAge:多少毫秒以后过期

  • expires: 具体的过期时间 Date类型

  • httpOnly:设置为true 只能在nodejs后台访问,前端无法访问

  • path:设置cookie访问的目录(只能在设置的路由里面访问)

  • domain:配置多个域名共享cookie(二级域名)

  • secure:cookie在http中无效,只有在https中生效

  • signed:是否加密

使用签名cookie,需要在使用中间件时,传入一个加密字符串;
设置cookie时,与之前一直,获取时需要使用res.signedCookies
如果签名cookie被修改,获取时会返回false

app.use(cookieParser('nodejs'))

// 设置cookie
res.cookie("username", "zhangsan", {
    maxAge: 1000 * 60 * 60,
    path: "signed", //签名cookies
})

// 获取cookie
app.login("/login", (req, res) => {
    console.log(req.signedCookies.username)
})