Browse Source

fixed mongodb missing authenticationDatabase parameter issue

marvzhang 5 years ago
parent
commit
bb18dab755
2 changed files with 10 additions and 8 deletions
  1. 8 7
      config.js
  2. 2 1
      server.js

+ 8 - 7
config.js

@@ -1,9 +1,10 @@
 module.exports = {
-    HOST: '0.0.0.0',
-    PORT: 3000,
-    MONGO_HOST: 'localhost',
-    MONGO_PORT: '27017',
-    MONGO_DB: 'artipub',
-    MONGO_USERNAME: '',
-    MONGO_PASSWORD: '',
+  HOST: '0.0.0.0',
+  PORT: 3000,
+  MONGO_HOST: 'localhost',
+  MONGO_PORT: '27017',
+  MONGO_DB: 'artipub',
+  MONGO_USERNAME: '',
+  MONGO_PASSWORD: '',
+  MONGO_AUTH_DB: 'admin'
 }

+ 2 - 1
server.js

@@ -19,11 +19,12 @@ if (process.env.MONGO_PORT) config.MONGO_PORT = process.env.MONGO_PORT
 if (process.env.MONGO_DB) config.MONGO_DB = process.env.MONGO_DB
 if (process.env.MONGO_USERNAME) config.MONGO_USERNAME = process.env.MONGO_USERNAME
 if (process.env.MONGO_PASSWORD) config.MONGO_PASSWORD = process.env.MONGO_PASSWORD
+if (process.env.MONGO_AUTH_DB) config.MONGO_AUTH_DB = process.env.MONGO_AUTH_DB
 
 // mongodb连接
 mongoose.Promise = global.Promise
 if (config.MONGO_USERNAME) {
-  mongoose.connect(`mongodb://${config.MONGO_USERNAME}:${config.MONGO_PASSWORD}@${config.MONGO_HOST}:${config.MONGO_PORT}/${config.MONGO_DB}`, { useNewUrlParser: true })
+  mongoose.connect(`mongodb://${config.MONGO_USERNAME}:${config.MONGO_PASSWORD}@${config.MONGO_HOST}:${config.MONGO_PORT}/${config.MONGO_DB}?authenticationDatabase=${config.MONGO_AUTH_DB}`, { useNewUrlParser: true })
 } else {
   mongoose.connect(`mongodb://${config.MONGO_HOST}:${config.MONGO_PORT}/${config.MONGO_DB}`, { useNewUrlParser: true })
 }