3
是否有框架来支持完全客户端管理的会话?换句话说,并不是只在cookie中存储签名的pid(如Express所做的那样),而是存储所有上下文......以便您可以跨群集管理状态,而无需持久保存。NodeJS - 无状态会话的框架?
是否有框架来支持完全客户端管理的会话?换句话说,并不是只在cookie中存储签名的pid(如Express所做的那样),而是存储所有上下文......以便您可以跨群集管理状态,而无需持久保存。NodeJS - 无状态会话的框架?
没有支持这个快递中间件:
https://github.com/expressjs/cookie-session
cookieSession()
提供基于Cookie的会话,并填充req.session。该中间件包含以下选项:
中间件:
var cookieSession = require('cookie-session')
...
app.use(cookieSession({
name: "my_session_cookie",
secret: "dont_tell_anybody_the_secret_and_change_it_often",
options: { ... }
));
app.use((req, res, next) => {
// set options on req.session before your response goes out
req.session.viewCount = (req.session.viewCount || 0) + 1;
res.end(`You viewed the page ${req.session.viewCount} times.`);
});
要清除cookie就完全响应之前分配给空会话:
req.session = null
会话包含意味着仅用于服务器的私人用户信息。将整个会话发回给用户并不好。它可以被客户篡改。完全由客户端管理的会话是一个糟糕的主意。 – user568109
@ user568109,这是一种常见模式,可以安全地完成。 http://www.cse.msu.edu/~alexliu/publications/Cookie/cookie.pdf –
安全cookie协议是关于从第三方保护浏览器和服务器之间的连接。您提到的常见模式是仅限HTTP的cookie,它仅由浏览器管理,因此用户无法修改它。 – user568109