express的cookie-session中间件
cookie-session中间件说是将session data全部存储在客户端,但是不是存储在req.session中吗?不就是Node-Server的内存中吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
cookie-session中间件说是将session data全部存储在客户端,但是不是存储在req.session中吗?不就是Node-Server的内存中吗?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
问题一:session data是否全部存储在客户端
首先要了解session的机制,以用户通过浏览器访问网站为例:
访问网站的用户很多,服务端存储的session也很多,当用户再次访问网站,server怎么区分当前访问的用户对应的session是哪一个?
答案就是前面讲到的cookie。因此,session data 同时存储在服务端、客户端(比如浏览器)。
问题二:session在服务端的怎么存储
session 在服务端可以存储在多个地方,比如内存、本地磁盘、远程数据库等。cookie-session 默认是存在内存中,也可以选择其他存储方案,具体参考 官方文档
问题三:session data是否存储在req.session中
结论:session数据并不是存储在 req.session 中,只是为了方便用户操作,中间节给挂载到 req.session 上了而已。实际存储位置,参见上一个问题的答案。
流程如下:
用户访问 -> 按需读取用户session data -> 格式化session data -> 挂载到 req.session