《node.js实战》第七章 (7.2.5—7.5) connect 自带的中间件

7.2.5 session() 会话管理

由于本书使用的方式已经过时,笔记参考https://blog.csdn.net/cckevincyh/article/details/79816491这个教程。

 

不同于cookie保存在客户端,session被保存在服务器上,它储存着用户的登录信息。

当用户登陆后,服务器会生成一个session密钥保存在客户端的cookie里,客户端每次访问服务器携带密钥,服务器就知道这个用户是谁了。

1.基本用法

var expressSession = require("express-session")

var app = connect()

app.use(expressSession({
    secret: "keyboard cata",     //设置密钥
    name: "session",             //返回客户端的key的名称,这里设置的是req.session
    saveUninitialized: true,     //初始化session
    cookie: ('name', 'value', { maxAge:5000 }),    //设置cookie属性,名字和截止时间
}))


.listen(3000);

其他参数常见参数参考下图

 req.session.destroy(function(err){ /*销毁 session*/
    }) 

    req.session.username='张三'; //设置 session

    req.session.username //获取 session

    req.session.cookie.maxAge=0; //重新设置 cookie 的过期时间

 

7.3 basicAuth HTTP基本认证

const http = require('http');
const auth = require('basic-auth');

const server = http.createServer((req,res)=>{
    const author = auth(req);

    console.log(author);
}).listen(3000);

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值