背景:在用express框架作登陆权限,处理会话机制时踩了一个坑,session设置时间后访问接口时间不会顺延从新计算,困扰了半天时间,最后看知悉看了一下API而后发现了具体的问题,废话很少说直接上解决后的源码express
app.use(session({ secret: 'keyboardcat', name: 'token', //这里的name值得是cookie的name,默认cookie的name是:connect.sid rolling: true, cookie: {maxAge: 10000 }, //设置maxAge是10000ms,即10s后session和相应的cookie失效过时 resave: true, saveUninitialized: false }));
resave: 是否容许 session 从新设置,要保证 session 有操做的时候必须设置这个属性为 true。
rolling: 是否按照原设定的 maxAge 值重设 session 同步到 cookie 中,要保证 session 有操做的时候必须设置这个属性为true。
saveUninitialized: 是否设置 session 在存储容器中能够给修改。
如何想要访问页面接口时顺延session会话时长,就必须将resave、rolling设置为true,同时saveUninitialized设置为false容许修改cookie