1。创建一个新的快递项目。表达节点cookie2。安装依赖。cdnode-cookieenpmi由于cookie-parser内置于express框架中,因此无需手动安装。3.设置cookie。在./routes/users.js文件中新建路由/setcookie,在路由中设置路由。也可以设置多个cookie,获取cookie的时候有多个。router.get('/setcookie',(req,res,next)=>{res.cookie('name','stone',{maxAge:6000,httpOnly:true})res.send('设置成功')})4.获取cookie。cookie设置成功后,前端与后端通信时会在请求头中带上cookie。后端使用req.cookies来获取。router.get('/getcookie',(req,res,next)=>{res.send(JSON.stringify(req.cookies))//{"name":"stone"}})5.设置签名cookie在第3步中设置的cookie的明文。如果需要签名,可以使用cookie-parser模块的signed:true属性。//app.jsapp.use(cookieParser('secrete'))//它的参数用于签名和解密。//测试加密和解密函数。//./routes/users.jsrouter.get('/setcookie',(req,res,next)=>{res.cookie('name','stone',{maxAge:60000,httpOnly:true})res.cookie('name1','stone',{maxAge:60000,httpOnly:true})res.cookie('name20','stone',{maxAge:60000,httpOnly:true,signed:true})res.cookie('name21','stone',{maxAge:60000,httpOnly:true,signed:true})res.send('设置成功')})6.获取签名cookie//./routes/users.jsrouter.get('/getcookie',(req,res,next)=>{leto={unsign:req.cookies,signed:req.signedCookies}res.json(o)})7.谈谈cookie-parser。设置cookie时使用的res.cookie的第三个参数是cookie的限制属性。cookie-parser是一个用于解析/设置cookie的模块。使用express框架需要如下代码。varexpress=require('express')varcookieParser=require('cookie-parser')varapp=express()app.use(cookieParser('signText'))//如果你使用签名,你必须设置秘密字符串,//app.use(cookieParser())//这不使用签名。这是我翻译的cookie-parser的文档。8.未来项目改进。由于cookie会保存在客户端,所以最好不要保存敏感信息。因为有些浏览器对cookies的大小和数量有限制,不能设置过多的cookies。所以使用cookies来保存sessionID来解决以上两个缺点。
