node中的session的使用

Session不是一个天生就有的技术,它的使用需要依赖cookie

session依赖cookie,当一个浏览器禁用cookie的时候,登陆效果消失; 或者用户清除了cookie,登陆也消失,session不可用。

sessioncookie的不同之处

1.存放位置不同,cookie存放在客户端,session存放在服务器。

2.cookie中的数据可以看得清楚,但是session下发的是乱码,并且服务器自己缓存一些东西,下次浏览器的请求带着乱码上来,此时与缓存进行比较,看看是谁。

3.cookie的存放量小 不能大于4k,session下放的是乱码,且存在服务器,所以存放量理论上无限大。

session在node中的使用

第一步,下载express-session : npm install express-session

第二步,在服务端引入express-session  

第三步,配置选项

 第四步,使用session

 

第一次输    /bb 没有登录,新开一个页面换成 /dd 之后在刷新 /bb的页面 显示登录。

代码如下

var express=require("express")
var app=express()
//var cookieParser = require('cookie-parser')
var session=require("express-session")
app.use(express.static("public"))
//app.use(cookieParser())
app.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true,
cookie: { secure: false}
}))
app.get("/bb",function(req,res){
if(req.session.login){
res.send("欢迎"+req.session.name)
}else{
res.send("没有登录")
}

})
app.get("/dd",function(req,res){
req.session.login=true
req.session.name="zhangsan"
res.send("denglu成功")
})

app.listen(3000)

猜你喜欢

转载自www.cnblogs.com/cuijiujiu/p/9455225.html