Express express-session

express-session的一些方法:

1. Session.destroy():删除session,当检测到客户端关闭时调用。

2. Session.reload():当session有修改时,刷新session。

3. Session.regenerate():将已有session初始化。

4. Session.save():保存session。

内存存方式例代:

一旦我们将express-session中间件用use挂载后,我们可以很方便的通过req参数来存储和访问session对象的数据。req.session是一个JSON格式的JavaScript对象,我们可以在使用的过程中随意的增加成员,这些成员会自动的被保存到option参数指定的地方,默认即为内存中去。

var express = require('express');

var session = require('express-session');

var app = express();

//Usethesessionmiddleware

app.use(session({

////这里的name值得是cookie的name,默认cookie的name是:connect.sid

//name:'hhw',

secret:'keyboard cat',

cookie: ('name','value', {path:'/', httpOnly: true,secure: false, maxAge:60000}),

//重新保存:强制会话保存即使是未修改的。默认为true但是得写上

resave: true,

//强制“未初始化”的会话保存到存储。

saveUninitialized: true,

}))

//只需要用express app的use方法将session挂载在‘/’路径即可,这样所有的路由都可以访问到session。

//可以给要挂载的session传递不同的option参数,来控制session的不同特性

app.get('/',function(req, res,next) {

varsess = req.session//用这个属性获取session中保存的数据,而且返回的JSON数据

if(sess.views) {

sess.views++

res.setHeader('Content-Type','text/html')

res.write('

欢迎第'+ sess.views +'次访问'+'expires in:'+ (sess.cookie.maxAge /1000) +'s

')

res.end();

} else {

sess.views = 1

res.end('welcome to the session demo. refresh!')

}

});

app.listen(3000);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容