簡體   English   中英

Loopback MongoError:未授權對heroku_xxxx.role進行查詢

[英]Loopback MongoError: not authorized for query on heroku_xxxx.role

我正在使用Loopback為我的服務器進行以下設置:

"loopback": "^2.36.0",
"loopback-boot": "^2.23.0",
"loopback-component-explorer": "^2.4.0",
"loopback-component-storage": "^1.9.1",
"loopback-connector-mongodb": "^1.17.0",
"loopback-datasource-juggler": "^2.53.0",

它連接到mlab.com上的mongoDB

我的主要查詢包括一個模型及其依賴項,例如:

GET /api/course/1234
PARAMS filter = {
     include: [
          {relation:'students'},
          {relation:'documents'},
          {relation:'modules'}
     ]
}

99.9%的時間,它完美地運作。 但是當我開始在平台上開展更多活動時,我會在服務器開始崩潰之前開始收到此錯誤。 這是錯誤:

MongoError: not authorized for query on db.student
at Function.MongoError.create (/app/node_modules/mongodb-core/lib/error.js:31:11)
at queryCallback (/app/node_modules/mongodb-core/lib/cursor.js:182:34)
at /app/node_modules/continuation-local-storage/context.js:76:17
at bound (domain.js:287:14)
at runBound (domain.js:300:12)
at Callbacks.emit (/app/node_modules/mongodb-core/lib/topologies/server.js:119:3)
at null.messageHandler (/app/node_modules/mongodb-core/lib/topologies/server.js:397:23)
at Socket.<anonymous> (/app/node_modules/mongodb-core/lib/connection/connection.js:302:22)

有時它在db.students ,有時它在db.documents ......似乎是隨機的,我不知道如何修復它。

要連接到DB,我使用mlab提供的URI。 看起來像這樣:

mongodb://<dbuser>:<dbpassword>@<dbpath>/<dbname>

有沒有?&authMode=scram-sha1&rm.tcpNoDelay=true ,但仍然有錯誤。

任何想法發生了什么以及如何解決這個問題?

__編輯:我嘗試了幾個不同的版本而沒有運氣。 最新的是:

"loopback": "^2.22.0",
"loopback-boot": "^2.6.5",
"loopback-component-explorer": "^2.4.0",
"loopback-component-storage": "^1.9.1",
"loopback-connector-mongodb": "^1.17.0",
"loopback-datasource-juggler": "^2.39.0",

__編輯:我在Github上發現了這篇文章: https//github.com/strongloop/loopback-connector-mongodb/issues/251這似乎是同樣的錯誤,我跟着其他人說通過改變mongodb解決了他們的問題@ 2.1.18但仍然沒有運氣......

解決方案是將Loopback更新到最新版本。 Loopback庫包含MongoDB節點驅動程序作為依賴項,並使用驅動程序連接到MongoDB數據庫。

以前版本的MongoDB節點驅動程序具有已知的連接/身份驗證問題。 通過更新到最新的Loopback版本,安裝了更新版本的Node驅動程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM