问题标签 [express-session]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - saveUninitialized 和重新保存有什么区别?
Express 的会话中间件提供了几个可配置的选项。
resave : '强制将会话保存回会话存储,即使在请求期间从未修改过会话。'
saveUninitialized : '强制将“未初始化”的会话保存到存储中。会话是新的但未修改时未初始化。
看来这两个选项都用于保存未修改的会话。有什么不同?
node.js - NodeJS:带有会话的“ENOENT”警告消息
我将 node 与 express-session 和 session-file-store 包一起使用。会话数据使用 session-file-store 包作为文件存储在根目录中。但是,现在我的日志被阻塞了,因为消息[session-file-store] will retry, error on last attempt: Error: ENOENT, open 'sessions/_jl2ijMBQHIvv8M1mYTcnFZGqwGo0t-v.json'
在短时间内访问的每个会话 cookie 出现 5 次。什么可能导致此错误?它发生在我的 Windows 开发机器和我的 ubuntu 服务器上。它显然无法访问该文件,但会话仍然有效。
这是我收到的一系列错误之一:
javascript - 回调内部的快速会话在外部返回未定义
我有一条用 Express 编写的路线,如下所示:
当someBoolean为真时,应设置会话。然而,在移动到不同的页面后,req.session.user 以未定义的形式返回。但是,在 someFunction 中检查 req.session.user会返回定义。我发现会话在 someFunction 范围之外变得未定义的解决方案是将 res.render("route") 移动到someFunction中,如下所示:
但是,当someBoolean为 false 时,这会导致路由失败。我认为这是由 Node.js 的异步特性引起的,但我不确定。是什么导致这种情况发生,这是正确的解决方案吗?
angularjs - 快速会话不是持久的
我目前正在尝试在快速会话中保存数据。
我使用以下软件包:
我正在以这种方式实施会话:
现在我遇到了以下问题:当我尝试使用名为“Postman REST Client”(Chrome 扩展)的软件发布到 /api/auth/login 时,它可以工作,并且在获取 /api/user/me 时将记录用户 ID。
但是,如果我尝试在 angular.js 应用程序中发布到 /api/auth/login,它不会保存会话值。我总是得到一个没有用户 ID 的干净会话对象。
也没有保存cookies。
请你帮助我好吗?
问候:马克斯
node.js - express-session,在 socket.io 交互中读取 vars
我正在使用 express.js 和 socket.io 为网页的客户进行聊天,并且我正在尝试使用 express-session 管理会话,我的问题是,如何读取套接字上的会话值。这是我的代码的一部分。
谢谢您的帮助 :)
node.js - 如何使用 express-session 生成自定义会话 ID?
我使用 Redis 作为会话存储,我还想使用express-session
. 到目前为止,我实现的是用这样的常量字符串创建会话:
redis configuration
它在 redis 中创建键,如下所示:
但是,我无法生成唯一 id,uuid
如 doc here session-store github中所述。我已经尝试在我的索引路由文件(routes/index.js
)中插入会话值,如下所示
genid
但由于 value无法读取函数内部的 value undefined
。所以,我的问题是:
我可以使用uuid
任何模型生成会话 iduser->uuid
吗?如果是,我该怎么做?
谢谢,任何帮助将不胜感激。
node.js - 使用 Session 更新 EJS 布局
我的 ejs 布局通过会话在主菜单上提供当前用户的用户名
现在,当我销毁会话并重定向到主页时,当前用户的信息仍在显示,尽管记录当前用户返回未定义。有没有办法强制布局更新自身以显示当前信息?
node.js - 通过 _id cast 错误手动删除 connect-mongo 会话
我正在尝试从 connect-mongo 会话集合中手动删除一个文档。当我尝试删除文档时,出现以下错误:
消息:'在路径“_id”处,值“gl9-V-bjAjqv2Nwdf9vHPLN_Fnnl4Thz”的值转换为 ObjectId 失败'
express-session 使用以下函数生成会话 id:
从此函数生成的会话将进入会话文档的 _id 属性。但是,当您尝试通过生成的 id 查找或删除文档时,您会收到错误消息。
mongodb 文档说 _id 应该是
ObjectId 是一个 12 字节的 BSON 类型 ObjectId
我尝试使用会话上的 genid 选项覆盖会话 ID,但覆盖并没有使其进入数据库。
如何在文档中获取有效的 _id 或使用无效的 _id 查询文档?
谢谢!
我的基础架构:Express 4.10、Node v0.12.7、Compose.io、connect-mongo、express-session
node.js - 什么是 npm 模块支持 Redis Sentinel 作为会话存储
我将在我的 Node js (express) Web 应用程序中使用 redis sentinel cluster 作为会话存储。您能否列出执行此操作的最佳 npm 模块。
javascript - node express,注销后如何清除cookie
基本上我正在从 a.example.com 重定向到 www.example.com 并且我希望能够删除 www.example.com 上的 cookie(因为 cookie 是使用 .example.com 作为 cookie 域创建的),但是以下代码不起作用。
我知道这个问题似乎是重复的问题,我尝试了类似问题的所有内容,但它不起作用。看看我已经尝试过的代码。
使用 express 3.0.3 和节点 0.10.32。
快速会话中间件
登出功能
我已经从类似的问题中尝试过
所以我放入path : '/'
了快速会话中间件,例如:
没有成功。
- https://groups.google.com/forum/#!topic/express-js/PmgGMNOzhgM
我使用的是 res.clearCookie: res.cookie('express.sid', '', {expires: new Date(1),小路: '/' });
没有成功。