【问题标题】:connect-mongo causing MongoError: E11000 duplicate key error collectionconnect-mongo 导致 MongoError: E11000 duplicate key 错误收集
【发布时间】:2018-10-02 11:22:50
【问题描述】:

我正在使用 connect-mongo 来存储会话。

有时我会得到:

MongoError: E11000 重复键错误集合

我有一个相对较大的站点,它使用 mongoDB 进行复制。

我试图清除会话文档,这又出现了。

谢谢

【问题讨论】:

    标签: node.js express mongoose keystonejs connect-mongo


    【解决方案1】:

    我遇到了同样的问题。即使是 uuidv4 解决方法也对我不起作用。 最后,我从“connect-mongo”转到了“connect-mongodb-session”。

    您只需使用原始 MongoDB URI 更改配置存储,一切都像一个魅力。

    我怀疑“connect-mongo”不再受支持:距离 github 上的最后一次更新已经有一段时间了。

    【讨论】:

      【解决方案2】:

      为了解决这个问题,我通过以下代码更改了从“快速会话”生成的会话 ID:

      var uuidv4 = require('uuid/v4');
      app.use(session({
        genid: function(req) {
          return uuidv4() 
        }
      
      }))
      

      【讨论】:

        【解决方案3】:

        这可能是 sessionstore 上发生的已知问题:

        https://github.com/adrai/sessionstore/issues/43

        【讨论】:

        猜你喜欢
        • 2013-02-08
        • 2022-11-02
        • 2016-04-10
        • 2018-11-11
        • 1970-01-01
        • 2020-10-19
        • 1970-01-01
        • 2021-09-19
        • 2021-03-04
        相关资源
        最近更新 更多