gpt4 book ai didi

node.js - session 管理、Node+Express 和 Mongoose 架构对象

转载 作者:太空宇宙 更新时间:2023-11-04 01:14:26 25 4
gpt4 key购买 nike

我正在使用 Node.js + Express + Mongoose,并且有一个 Mongoose 架构,用于存储“ session ”数据。同时,我使用“connect-mongodb”进行 session 管理( native 驱动程序)。

直到今天我才意识到我的功能是多余的。

因此,我尝试将架构对象添加到“req.session”中。它似乎有效,但我在下一个请求中失去了 Schema 对象的 Moongose 功能。

我考虑的一个选择是将对象的 id 存储在“req.session”中,然后使用 Mongoose 检索它。

我考虑的另一个选择是用 Mongoose session 管理器替换“connect-mongoose”。

您能否帮助我做出决定,并推荐一种方法。更具体地说,如果我使用 Mongoose 解决方案,它会解决我的 Schema 对象失去 Mongoose 功能的问题吗?

TIA

最佳答案

我的建议是让 Mongoose 完全脱离 session 管理,只在 req.session 上的 session 中保留纯 JavaScript 对象。这样您就可以像现在一样使用 connect-mongodb 或切换到其他 session 存储,例如 connect-redis如果您想隔离数据库,这非常容易。如果您需要频繁访问感觉像是 session 一部分的 Mongoose 对象,请将这些对象的 objectId 作为字符串保留在 session 中,以便可以根据需要快速轻松地查找它们。

关于node.js - session 管理、Node+Express 和 Mongoose 架构对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12219163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com