node session会话

Posted 甜珊贝奇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node session会话相关的知识,希望对你有一定的参考价值。

会话机制:

浏览器-->服务器

浏览器<--服务器 (产生一个会话id,保存在cookie中)

浏览器-->服务器(服务器根据会话id关联到相应数据信息体data)

 

var express = require(‘express‘);
var session = require(‘express-session‘);
var cookieParser = require(‘cookie-parser‘);

var app = express();

app.use(cookieParser());
app.use(session({

  name : ‘sess‘,  //在cookie中session的字段名,默认为 connect.sid
  store : ,   //session的储存方式,默认存放在内存中,也可以使用 redis,mongodb 等。express 生态中都有相应模块的支持。

  secret : ‘老王‘,  //计算hash值,放在cookie中,使产生的signedCookie防篡改

  cookie :   ,//设置存放 session id 的 cookie 的相关选项,默认为(default: { path: ‘/‘, httpOnly: true, secure: false, maxAge: null })

  genid :   ,//产生一个新的 session_id 时,所使用的函数, 默认使用 uid2 这个 npm 包

  rolling: false  ,//每个请求都重新设置一个 cookie,默认为 false

  resave : true  //即使 session 没有被修改,也保存 session 值,默认为 true
}));

app.get(‘/num‘,function(req,res){
  if(!req.session.num){
    req.session.num = 1;
  }
  req.session.num++;
  res.send("the num is:"+req.session.num);
});
app.listen(8000);

 

参考网址:http://wiki.jikexueyuan.com/project/node-lessons/cookie-session.html

以上是关于node session会话的主要内容,如果未能解决你的问题,请参考以下文章

没有 req.session.save() 会话不会保存在 Node.js 中

在 Node 中使用 MemoryStore 存储会话数据,类似于 PHP 中的 $_SESSION['data'] = value

Node.js_express_临时会话对象 npm install express-session

Node.js、Angular、express-session:由于 cookie 策略(sameSite cookie),Chrome 80 不保存会话

每次刷新或访问页面时,Node js express-session都会创建新的会话ID

基于 Koa平台Node.js开发的KoaHub.js获取/设置会话功能代码