npm提供了一个mongodb包用来连接mongodb
首先用npm安装mongodb模块
npm install mongodb
对于未添加验证的mongodb服务端,创建first.js文件
再创建数据库数据
然后写连接代码:
const MongoClient = require('mongodb').MongoClient; // Connection URL const url = 'mongodb://localhost:27017'; // Database Name const dbName = 'test'; // Use connect method to connect to the server MongoClient.connect(url, function(err, client) { if(err){ console.log(err); } console.log("connect successful"); const db = client.db(dbName); const col = db.collection('demo'); col.find().toArray((err, res) => { console.log(res) }); });
查询结果:
对于添加了用户验证的mongodb服务端,只需要修改url就可以
格式:
mongodb://user:pass@dhost:port/baseName
由于本地的数据库未添加验证,我用远程的做一个示例
创建second.js
const MongoClient = require('mongodb').MongoClient; // Connection URL const url = 'mongodb://test:[email protected]:27017/test'; // Database Name const collectionName = 'demo'; // Use connect method to connect to the server MongoClient.connect(url, {useNewUrlParser: true}, function(err, client) { if (err){ console.log("auth failed !"); console.log(err); return; } console.log("Connected correctly to server"); client.collection(collectionName).find().toArray((err, res) => { console.log(res); }); });
然后就出现问题了
这个问题最终在overflow上找到了解决方法。
只需要将mongodb降级即可,
修改package.json中的mongodb版本号
将^3.1.1修改成^2.2.33再执行
npm install
然后执行脚本即可
查询成功。