Vì tất cả các câu trả lời đều thiếu một số bit (bắt khối, kiểm tra xem ứng dụng khách không phải là null
) Tôi đã đến với giải pháp của riêng tôi. Đã thử nghiệm với máy chủ Mongo v4.0.7 và trình điều khiển Node JS 3.2.2.
Lưu ý rằng ví dụ là một chương trình bảng điều khiển, nơi chúng tôi đóng kết nối với máy chủ trong finally
khối. Trong một ứng dụng web, các kết nối được sử dụng lại. Xem tài liệu Node Mongo. Ngoài ra, các lỗi được ghi bằng các thư viện như Winston hoặc Morgan và không được ghi trên bảng điều khiển.
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
async function findOne() {
const client = await MongoClient.connect(url, { useNewUrlParser: true })
.catch(err => { console.log(err); });
if (!client) {
return;
}
try {
const db = client.db("testdb");
let collection = db.collection('cars');
let query = { name: 'Volkswagen' }
let res = await collection.findOne(query);
console.log(res);
} catch (err) {
console.log(err);
} finally {
client.close();
}
}
await findOne();