进行session存储时需引用中间件,app.js
  1. var express=require('express');
  2. var app=express();
  3. var cookieParser = require('cookie-parser');
  4. var session = require('express-session');
  5.  
  6. app.use(cookieParser('sessiontest'));
  7. app.use(session({
  8. secret: 'sessiontest',//与cookieParser中的一致
  9. resave: false,
  10. saveUninitialized:true
  11. }));
具体配置项可以查看相应文档进行了解
 
/*设置完毕后进行路由设置,注意先后顺序,路由设置应放在cookie及session设置之后*/
app.use('/public',express.static(staticDir));
app.use('/page',require('./routes/web-page'));
 
路由控制文件 web-page.js
  1. var express=require('express');
  2. var router=express.Router();
  3. var userModel=require('../modules/user').user; //user表
  4. var deviceModel=require('../modules/device').device;
  5. var bodyParser = require('body-parser');
  6.  
  7. router.post('/login',function (req,res) {
  8. var user=req.body.user;
  9. var code=req.body.password;
  10. userModel.authenticate(user,code,function (err,data) {
  11. if(err) res.send({status:-1,msg:err.name});
  12. if(data.status==0){
  13. var userInfo={name:data.msg.name,role:data.msg.role,limit:data.msg.limit};
  14. console.log(userInfo);
  15. req.session.user=userInfo; //设置session
  16. res.send({status:0,msg:'成功'});
  17. }
  18. else {
  19. res.send(data);
  20. }
  21. });
  22. });
  23.  
  24. router.get('/header',function (req, res) {
  25. if(req.session.user){
  26. res.render('header',{userName:req.session.user.name,roleName:req.session.user.role}); //将session中的值通过模板渲染,然后在页面中显示
  27. }
  28. else {
  29. res.render('header',{userName:'test',roleName:'test'});
  30. }
  31. });

Express session的使用的更多相关文章

  1. express session 和 socketio session关联

    express session http是没有状态的协议, 需要web框架自己实现会话和会话管理工作. express框架有session插件可以使用. 见如下介绍: https://www.tuto ...

  2. express session 实现登录

    https://www.cnblogs.com/mingjiatang/p/7495321.html Express + Session 实现登录验证   1. 写在前面 当我们登录了一个网站,在没有 ...

  3. express+session实现简易身份认证

    本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 文章概览 本文基于express.express-session ...

  4. Nodejs进阶:express+session实现简易身份认证

    本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 文档概览 本文基于express.express-session ...

  5. Express + Session 实现登录验证

    1. 写在前面 当我们登录了一个网站,在没有退出登录的情况下,我们关闭了这个网站 ,过一段时间,再次打开这个网站,依然还会是登录状态.这是因为,当我们登录了一个网站,服务器会保存我们的登录状态,直到我 ...

  6. express session

    一.什么是session? 最近在学习node.js 的express框架,接触到了关于session方面的内容.翻阅了一些的博客,学到了不少东西,发现一篇博文讲的很好,概念内容摘抄如下: Sessi ...

  7. express --- session详解

    之前一直做前端相关的工作,所以不太清楚session,也没有主动了解,最近在学node,对session的认识又有所加深,故总结之. 注: 关于session的一些配置问题,可以看这里. 第一部分: ...

  8. nodejs express session用法(含保存到redis)

    普通用法: var express = require('express'); var session = require('express-session'); var app = express( ...

  9. NodeJS学习笔记 进阶 (7)express+session实现简易身份认证(ok)

    个人总结: 这篇文章讲解了express框架中如何使用session,主要用了express-session这个包.更多可以参考npm.js来看,读完这篇文章需要10分钟. 摘选自网络: 文档概览 本 ...

随机推荐

  1. css奇技淫巧之—多列等高

    什么是等高布局? 先来看一个案例: 上图中的页面的主体内容是两列结构,左列是用来导航的,右列是用来显示内容的.我们看到它们有一个共同的边框,中间还有一条分隔线,左右两列的高度都是不固定的.这种情况下就 ...

  2. Eclipse设置每行代码的长度

    打开 Window -> preferences -> java -> code style -> formatter -> edit -> line wrappi ...

  3. 一个经典的PHP文件上传类

    需求分析如下: (1)支持单个文件上传 (2)支持多个文件上传 (3)可以指定保存位置 可以设置上传文件允许的大小和类型 可以选择重命名和保留原名 <!-- 设计一个经典文件上传类 需求分析 ( ...

  4. Python中的集合类型分类和集合类型操作符解析

    集合类型    数学上,把set称作由不同的元素组成的集合,集合(set)的成员通常被称作集合元素(set elements).    Python把这个概念引入到它的集合类型对象里.集合对象是一组无 ...

  5. 【WEB基础】HTML & CSS 基础入门(9)CSS盒子

    网页上的元素辣么多,我该用什么办法让它们排列整齐.间距合理呢.常干家务的朋友们就容易理解了,用收纳盒呀! 所以用CSS做网页布局就涉及一个盒子的概念,简单理解,我们可以把页面上的所有HTML元素看作一 ...

  6. cf1040E. Network Safety(并查集)

    题意 题目链接 一张图,n个点,m条边,每个点有个权值x,x<=1e18.如果一条边的两个端点不一样,那么这条边是安全的,开始时所有边都是安全的. 现在有一个病毒y,病毒可以入侵任意的点,入侵一 ...

  7. jquery中的置顶,置底,向上,向下的排序功能

    css .selectedLi{background: #f0ad4e;color:#fff;} html部分 <ul class="seetSelect2" id='sys ...

  8. 《译》准备做一些 AR/增强现实的 翻译

    中文这方面资料实在少之又少. 准备做一些这方面翻译,关注于Vuforia, Unity3d, Hololens等方面. 如有问题.建议,随时联系.Fell free ton contact me.

  9. 【extjs6学习笔记】1.10 初始: 定义类

    http://www.extjs-tutorial.com/extjs/define-new-class-in-extjs

  10. 从.net到java,从基础架构到解决方案。

    这一年,职业生涯中的最大变化,是从.net到java的直接跨越,是从平台架构到解决方案的不断完善. 砥砺前行 初出茅庐,天下无敌.再学三年,寸步难行.很多时候不是别人太强,真的是自己太弱,却不自知. ...