connect中间件session、cookie的使用方法分享
connect中间件session、cookie的使用方法分享
发布时间:2016-12-30 来源:查字典编辑
摘要:Connect是一个node中间件(middleware)框架。具体不表,看官网介绍http://www.senchalabs.org/co...

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教程学习
热门Javascript教程学习
编程开发子分类