Express express-session
Express express-session
博为峰教研组 发表于1年前
Express express-session
  • 发表于 1年前
  • 阅读 15
  • 收藏 1
  • 点赞 0
  • 评论 0

【腾讯云】如何购买服务器最划算?>>>   

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();

// Use the session middleware

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) {

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

  if (sess.views) {

    sess.views++

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

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

    res.end();

  } else {

    sess.views = 1

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

  }

});

app.listen(3000);

共有 人打赏支持
粉丝 46
博文 1224
码字总数 479077
×
博为峰教研组
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: