微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

错误“无法解析密文对象!”使用 connect-mongo 存储会话时

如何解决错误“无法解析密文对象!”使用 connect-mongo 存储会话时

我正在使用 connect-mongo 包在 mongoDB 中存储会话。

我按照 https://www.npmjs.com/package/connect-mongo 上的包文档设置了以下代码

const session = require('express-session')
const MongoStore = require('connect-mongo')

const storeOptions = MongoStore.create({
  mongoUrl: 'mongodb://localhost/testt',mongoOptions: {
    useNewUrlParser: true,useUnifiedTopology: true,},crypto: {
    secret: 'squirrel'
  },autoRemove: 1 / 60000
})

app.use(session({
  secret: process.env.SESSION_SECRET,resave: false,saveUninitialized: false,cookie: {
    // secure:true,maxAge: 5 * 60 * 60 * 1000,//  5 hours in milliseconds
  },store: storeOptions
}))

一切正常,直到我在上面的代码中使用了这部分:

crypto: {
    secret: 'squirrel'
  }

现在我在终端中收到一条错误消息,显示 Unable to parse ciphertext object!

而且我确定这是因为 crypto

中的 MongoStore.create() 部分

我该怎么办?

除了问题之外的一个请求: 我是新手,正在自己学习身份验证,但我没有获得有关会话的任何资源(包文档除外),也没有将会话存储在 DB 而不是 memoryState() 中。 所以你能告诉我这是正确的方式还是有其他有效的方式在 mongoDB 中存储会话。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。