我正在尝试使用nodejs程序连接刚刚创建的mongodb atas数据库,但出现此错误:
错误:无效的mongodb uri “ mongodb + srv:// loginr:aqpass5@cluster0-ymz55.mongodb.net/barcode?retryWrites = true”。 必须以“ mongodb://”开头
export default {
"mongoUrl": "mongodb+srv://user:password@cluster0-ymz55.mongodb.net/barcode?retryWrites=true",
}
import mongoose from 'mongoose';
import config from '../config/index';
mongoose.Promise = global.Promise;
const connectToDb = async () => {
try {
await mongoose.connect(config.mongoUrl, { useMongoClient: true });
logger.info('Connected to mongo!!!');
}
catch (err) {
console.log(err);
logger.error('Could not connect to MongoDB');
}
}
export default connectToDb;
答案 0 :(得分:0)
取决于您的结构...我在文件夹“ setup”中有“ myurl”文件,而在该映射之外有index.js文件。
在myurl文件中:
module.exports = {
mongoURL:"mongodb+srv://username:Password@cluster0-8htmv.mongodb.net/test?retryWrites=true&w=majority"};
确保正确的用户具有正确的密码。
在“ index.js”文件中:
const db = require('./setup/myurl').mongoURL; //directs to your other js-file
mongoose
.connect(db,**{useNewUrlParser: true, //this part is fairly new
useUnifiedTopology: true}**)
.then(() => console.log("Success"))
.catch(err => console.log(err));
祝你好运