[英]How to create global objects in MongoDB's V8 engine to be accessible via db.eval?
[英]how to connect and set global "db" variable in nodejs V18.13.x and mongodb V6.0
我有它的代碼;
const { MongoClient } = require("mongodb");
var db = null // global variable to hold the connection
var url = 'mongodb://0.0.0.0:27017/'
var dbName = 'mydb'
MongoClient.connect(url, (err, client) => {
if (err) {
console.error(err)
} else {
db = client.db(dbName) // once connected, assign the connection to the global variable
console.log(db)// show result
}
})
console.log(db) //result null
如何訪問 app.js 或其他模塊中的“db”變量
app.js 中的這個腳本
var db = require('./mongo.js')
console.log(db); //result empty string
要使用 MongoDB 版本 6.0 連接到 Node.js 版本 18.13.x 中的 MongoDB 數據庫,您可以使用 Node.js 的 MongoDB 驅動程序。
npm install mongodb
const MongoClient = require('mongodb').MongoClient;
global.db;
4.然后,您可以使用 MongoClient.connect() 方法連接到您的 MongoDB 數據庫,傳入連接 URL 和回調 function 以處理任何錯誤或成功連接。
MongoClient.connect('mongodb://<host>:<port>/<dbname>', {useNewUrlParser: true}, (err, client) => {
if(err) throw err;
global.db = client.db(<dbname>);
console.log("Connected to MongoDB");
});
global.db.collection('users').find().toArray((err, result) => {
console.log(result);
});
確保將host 、 port和dbname替換為適合您的 MongoDB 設置的值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.