我有mongodb服务器和nodejs。所以我需要将mongodb连接到具有mongodb服务器提供的IP的nodejs (如果这有任何不同,我也有登录名和密码)。这意味着数据库不在本地计算机上。
这个想法很简单,我通过 socket 将CLIENT连接到NODEJS,nodejs必须向MONGODB发出请求,获取结果并将数据发送回客户端。
在这种情况下我应该如何连接mongodb,并且我是否需要为每个打开的套接字建立连接?
答案 0 :(得分:2)
我建议使用mongoose连接到MongoDB服务器。 Quick Start指南会向您展示如何。
要创建侦听TCP套接字连接的套接字服务器,可以使用net.createServer()。链接文档还有一些如何使用它的示例。
答案 1 :(得分:1)
当node.js从客户端收到你应该发出的消息并将请求传递给mongodb驱动程序时。
您可以将地址和端口设置为mongodb驱动程序,如下所示:
var MongoClient = require('mongodb').MongoClient;
MongoClient.connect("mongodb://user:pass@remotehost:port/DatabaseName", function(err, db) {
if (err) throw err;
var collection = db.collection('yourcollection');
var docs = [{mykey:1}, {mykey:2}, {mykey:3}];
collection.insert(docs, {w:1}, function(err, result) {});
});
});