connect中间件session、cookie的使用方法分享
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});
相关文章
Nodejs如何使用http标准库异步加载https请求json数据
这篇文章主要介绍了Nodejs如何使用http标准库异步加载https请求json数据,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-09-09NodeJS 基于 Dapr 构建云原生微服务应用快速入门教程
Dapr 是一个可移植的、事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的、无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言和开发框架,本文重点介绍NodeJS云原生微服务应用,感兴趣的朋友一起看看吧2022-07-07
最新评论