《node学习--第八篇》express实现cookie和session

本文介绍了如何在Node.js中使用Express框架处理Cookie和Session。通过在首次访问时设置Session ID到Cookie中,服务器可以依据此ID识别用户信息。内容包括安装必要的中间件如cookie-parser和cookie-session,以及在Cookie中添加数据并实现数据加密,确保密码等敏感信息的安全。
摘要由CSDN通过智能技术生成

node学习所有的源码都在我的github仓库中https://github.com/samdidemo/nodejs

cookie和session

session是基于cookie的,当我们访问浏览器时,第一次访问时,一般服务器会往cookie里面添加sessionid,然后每次浏览器访问服务器时,服务器根据sessionid便可以查出用户的信息,当然,往cookie添加什么都可以,不一定是sessionid

添加完的cookie就不是空的了,而是{"sessionid":"xxxxxxxxxxxxxxxxx"}类似这样的

往cookie里面添加数据

首先,安装express,express-static,cookie-session,cookie-parser

npm install cookie-parser cookie-session express-static express

然后新建server.js

const express=require('express')
const cookieParser=require('cookie-parser')
const expressStatic=require('express-static')

var server=express()
server.use('/nodejs',function(req,res){
  res.cookie('username','linyongbin')
  res.send('welcome nodejs')
})
//加了path之后,cookie只能在/lin路径下才能访问,maxAge是cookie的存活时间,单位是毫秒
server.use('/lin',function(req,res){
  res.cookie('age',16,{path:'/lin',maxAge:15*1000})
  res.send('welcome lin')
})
server.listen(8080)

访问8080/nodejs端口,可以看到welcome nodejs,并且在cookie里面可以看到插入的数据

cookie数据加密

server.get('/lin/secret',function(req,res){
  req.secret='s9udbgeusdne2123'//添加秘钥,随便写什么
  res.cookie('password','linyongbin',{signed:true})//把签名signed设置为true
  res.send("cookie加密")
})

 

可以看到密码已经加密

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值