弄了两天也搞不好,来问问站里的大神了。关于MONGODB加auth后报错
发布于 10 年前 作者 dean5277 6302 次浏览 最后一次编辑是 8 年前 来自 问答

不加auth的话,网站运行是没问题的。

在admin加了auth后,用mongo测试了下,是通过验证的 db.getSiblingDB(“admin”).runCommand( { createUser: “abc”,pwd: “12345”,customData: { adminId: 12345 },roles: [{ role: “userAdminAnyDatabase”, db: “admin” },{ role: “dbAdminAnyDatabase”, db: “admin” },“readWrite”],writeConcern: { w: “majority” , wtimeout: 5000 }} )

在另外一个数据库B也单独加了权限 链接都没问题

但connect-session报了个错

untitled1.png untitled3.png untitled4.png

网上找了好多方法都不行,能启动,但是一运行就报错。 有人说是因为connect-session没启动就开始运行listen了。 但是我把listen写在, untitled5.png 也不行,程序进不了function里,但是如果我不加auth的时候,是可以执行function里的。

求各位大神帮忙看看什么问题。

9 回复

这种呢?

app.use(express.session({
    secret: "roflmao",
    store: new MongoStore({
        url: 'mongodb://user:pass@127.0.0.1:20578/db?authSource=admin',
        auto_reconnect: true
    })
}));

之前也遇到过类似的,把connect-mongo升级成最新的试试

@luoyjx 还是不行。

@DavidCai1993 已经是最新版本了

我把connect-mongo那个抛出错误的注释

得到的具体次错误信息是,not authorized for query on xxx.sessions

在connect-mongo.js里面打印username和password都正确, 在mongo上db.auth出来也是1 但是这里的result 竟然是false err是auth fail untitled1.png

untitled3.png

其他模块都验证过了,auth都没问题,就connet-mongo这个模块有问题

db.authenticate 一直返回auth fail…

好累。。。明天继续

单独写了段db.authenticate的去验证。。。。竟然成功了。。。

untitled1.png

untitled2.png

我无语了,找到原因了。。。 connect-mongo自导的mongodb版本有问题。。。。 引用自己重新install的就没问题了。。。

回到顶部