更新时间:2026-07-21 GMT+08:00
Node.js 示例
操作场景
DDS支持通过Node.js语言接口来操作数据,通过Node.js连接实例的方式有开启SSL认证连接和关闭SSL认证连接两种,其中开启SSL证书连接加密功能,具有更高的安全性。
DDS新实例默认关闭SSL数据加密,开启SSL请参考开启SSL。
本章节主要介绍使用Node.js语言连接集群实例的方法。
前提条件
环境配置及驱动获取
- 确保您的环境已安装Node.js,获取地址请参考 Node.js 官网。
- 初始化项目,创建项目目录并进入,执行初始化命令生成package.json文件:
mkdir your_project cd your_project npm init -y
- 安装驱动程序:
npm install mongodb@3.7.4
开启和关闭SSL安全连接
在 your_project 目录中,为应用程序创建一个名为index.js的文件,将示例代码复制到index.js中。
const { MongoClient } = require('mongodb');
const uri = 'mongodb://rwuser:rwuserpassword@ip:port/{mydb}?authSource=admin';
const client = new MongoClient(uri, {
serverSelectionTimeoutMS: 5000, // 5 秒内找不到可用节点就报错
connectTimeoutMS: 5000, // 单次 TCP 连接 5 秒超时
socketTimeoutMS: 10000 // socket 空闲 10 秒超时
});
async function main() {
try {
await client.connect();
console.log('成功连接到 MongoDB');
// 测试连接
const result = await client.db('admin').command({ ping: 1 });
console.log('Ping 结果:', result);
// 示例:读取数据
const db = client.db('test');
const collection = db.collection('users');
const doc = await collection.findOne({});
console.log('查到的第一条文档:', doc);
} catch (err) {
console.error('连接或操作失败:', err);
} finally {
await client.close();
}
}
main().catch(console.dir); const { MongoClient } = require('mongodb');
const uri = 'mongodb://rwuser:rwuserpassword@ip:port/{mydb}?authSource=admin';
const client = new MongoClient(uri, {
serverSelectionTimeoutMS: 5000, // 5 秒内找不到可用节点就报错
connectTimeoutMS: 5000, // 单次 TCP 连接 5 秒超时
socketTimeoutMS: 10000, // socket 空闲 10 秒超时
tls: true,
tlsCAFile:'./ca.crt', // 证书地址
tlsAllowInvalidHostnames: true
});
async function main() {
try {
await client.connect();
console.log('成功连接到 MongoDB');
// 测试连接
const result = await client.db('admin').command({ ping: 1 });
console.log('Ping 结果:', result);
// 示例:读取数据
const db = client.db('test');
const collection = db.collection('users');
const doc = await collection.findOne({});
console.log('查到的第一条文档:', doc);
} catch (err) {
console.error('连接或操作失败:', err);
} finally {
await client.close();
}
}
main().catch(console.dir);