connect中间件session、cookie的使用方法分享


Posted in Javascript onJune 17, 2014

Connect是一个node中间件(middleware)框架。具体不表,看官网介绍 http://www.senchalabs.org/connect/

在app.js中配置下(必须放到app.use(routes);之前)

var connect = require("connect");
app.use(connect.cookieParser());
app.use(connect.session({ secret: 'jiami', cookie: { maxAge: 60*60*24*1000}}));

然后在控制器中使用

//设置
req.session.username="sess_username";
req.session.password="sess_admin";
req.session.your = {username:"sess_name",password:"sess_pwd"};
//使用
console.log(req.session.username);
console.log(req.session.your);

其它方法

//注销session
req.session.destroy(function(err){
 console.log(err);
})
//重新生成sid
req.session.regenerate(function(err){
 console.log(err);
});

当设置了session后,我们看到cookie中多了条sid,是为了记录会话ID的

 

打印req.cookies和req.session对象

console.log(req.cookies);
console.log(req.session);

 

可以看到session是通过存了个connect.sid的方式来与客户端会话的,不过session是存在内存中的

二、cookie,官方文档:(http://www.senchalabs.org/connect/cookieParser.html 这个文档坑了我整整一天时间),费话不表,下面的例子是哥试出来的,因为文档上没写使用方法

设置

//设置cookie
res.cookie("user",{username:"cookie_name",password:"cookie_pwd"},{ maxAge: 60*60*24*1000,httpOnly:true, path:'/'});
res.cookie("msg", "用户名或密码不能为空", {maxAge:60*60*24*1000});

删除

res.cookie("msg", "用户名或密码不能为空", {maxAge:0});

Javascript 相关文章推荐
JQuery优缺点分析说明
Jun 09 Javascript
javascript 实用的文字链提示框效果
Jun 30 Javascript
js常用自定义公共函数汇总
Jan 15 Javascript
Window.Open如何在同一个标签页打开
Jun 20 Javascript
js设置控件的隐藏与显示的两种方法
Aug 21 Javascript
javascript中clipboardData对象用法详解
May 13 Javascript
js实现非常棒的弹出div
Oct 06 Javascript
值得分享和收藏的xmlplus组件学习教程
May 05 Javascript
Javacript中自定义的map.js  的方法
Nov 26 Javascript
angularjs实现时间轴效果的示例代码
Nov 29 Javascript
vue Tab切换以及缓存页面处理的几种方式
Nov 05 Javascript
Threejs实现滴滴官网首页地球动画功能
Jul 13 Javascript
jquery实现当滑动到一定位置时固定效果
Jun 17 #Javascript
jQuery分别获取选中的复选框值的示例
Jun 17 #Javascript
JS获取单击按钮单元格所在行的信息
Jun 17 #Javascript
IE8中使用javascript动态加载CSS的解决方法
Jun 17 #Javascript
jQuery循环滚动新闻列表示例代码
Jun 17 #Javascript
页面刷新时记住滚动条的位置jquery代码
Jun 17 #Javascript
javascript 获取HTML DOM父、子、临近节点
Jun 16 #Javascript
You might like
如何使用PHP获取网络上文件
2006/10/09 PHP
php Try Catch异常测试
2009/03/01 PHP
php 什么是PEAR?(第二篇)
2009/03/19 PHP
php禁止某ip或ip地址段访问的方法
2015/02/25 PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
2015/05/09 PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
2016/03/23 PHP
php加密解密字符串示例
2016/10/13 PHP
PHP自定义错误处理的方法分析
2018/12/19 PHP
javascript数组去掉重复
2011/05/12 Javascript
JqueryMobile动态生成listView并实现刷新的两种方法
2014/03/05 Javascript
javascript中的循环语句for语句深入理解
2014/04/04 Javascript
Jquery中offset()和position()的区别分析
2015/02/05 Javascript
JavaScript原生xmlHttp与jquery的ajax方法json数据格式实例
2015/12/04 Javascript
探索angularjs+requirejs全面实现按需加载的套路
2016/02/26 Javascript
全面了解函数声明与函数表达式、变量提升
2016/08/09 Javascript
详解使用nvm安装node.js
2017/07/18 Javascript
Vue2.0 vue-source jsonp 跨域请求
2017/08/04 Javascript
原生JS实现的放大镜特效示例【测试可用】
2018/12/08 Javascript
vue 中使用 watch 出现了如下的报错的原因分析
2019/05/21 Javascript
ES6 Proxy实现Vue的变化检测问题
2019/06/11 Javascript
纯 JS 实现放大缩小拖拽功能(完整代码)
2019/11/25 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
2020/10/16 Javascript
[38:44]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第二局
2016/02/25 DOTA
[48:24]完美世界DOTA2联赛循环赛LBZS vs Forest 第一场 10月30日
2020/10/31 DOTA
python opencv之SIFT算法示例
2018/02/24 Python
Python 变量的创建过程详解
2019/09/02 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
详解css3使用transform出现字体模糊的解决办法
2020/10/16 HTML / CSS
HTML5所有标签汇总及标签意义解释
2015/03/12 HTML / CSS
澳大利亚快时尚鞋类市场:Billini
2018/05/20 全球购物
Herschel Supply Co.美国:背包、手提袋及配件
2020/11/24 全球购物
承办会议欢迎词
2014/01/17 职场文书
年会活动策划方案
2014/01/23 职场文书
创业者是否需要商业计划书?
2014/02/07 职场文书
鲁滨逊漂流记读书笔记
2015/06/26 职场文书
2016党员发展对象培训心得体会
2016/01/08 职场文书