Node.js 为什么flash消息存储在nodejs auth中的会话中?

Node.js 为什么flash消息存储在nodejs auth中的会话中?,node.js,session,express,passport.js,flash-message,Node.js,Session,Express,Passport.js,Flash Message,我正在研究一个使用“连接flash”中间件的使用express和flash消息的auth应用程序 根据connect flash: 闪存是会话中用于存储消息的特殊区域。消息会写入闪存,并在显示给用户后清除。flash通常与重定向结合使用,以确保消息可用于要呈现的下一页。 闪存消息存储在会话中。首先,通过启用cookieParser和会话中间件,像往常一样设置会话。然后,使用connectflash提供的flash中间件 为什么flash消息存储在会话中?这不会增加cookie的大小,也不会因为可

我正在研究一个使用“连接flash”中间件的使用express和flash消息的auth应用程序

根据connect flash:

闪存是会话中用于存储消息的特殊区域。消息会写入闪存,并在显示给用户后清除。flash通常与重定向结合使用,以确保消息可用于要呈现的下一页。 闪存消息存储在会话中。首先,通过启用cookieParser和会话中间件,像往常一样设置会话。然后,使用connectflash提供的flash中间件

为什么flash消息存储在会话中?这不会增加cookie的大小,也不会因为可能会使用太多的内存空间而变得糟糕吗

为什么flash消息存储在会话中

因为
connectflash
需要一种在请求之间传播flash消息的方法,而会话存储是一种非常有用的方法

这不会增加cookie的大小吗

通常情况下,不会。会话cookie包含一条信息,即会话id。使用该id,可以从会话存储中查找会话数据,会话存储通常是某种类型的数据库。因此,无论会话中存储了多少数据,cookie大小都保持不变。但是,会话存储的大小会增加,但这通常不是什么大问题


上述语句的一个显著例外是,如果您使用的是类似的东西,它将整个会话数据存储在cookie本身中(因此不需要设置单独的会话存储)。

谢谢,我看到模板引擎填充了来自服务器(如jade或ejs)的消息。例如“无效用户名/密码”。但它们并不存储在会话中,而是在http请求后显示在前端。为什么会这样?@jdogdvr也许登录路由本身就可以处理这样的失败,所以它只是将一个“login failed”变量传递给模板,模板会显示相应的消息。