这一切都是在Heroku上运行的,而我正在尝试做的是获取用户在注册时输入的名称和密码,并将其保存到MongoLab集合“用户”。
我有Node.js,Express和Mongodb
我的数据库打开并配置了什么不对mongolab主机和端口。
var db = new mongo.Db('dbname', new mongo.Server('host', port, {auto_reconnect: true}));
var mongo_config = {
host:
port:
dbname:
username:
password:
};
db.open(function(err, clien) {
//help 1
});
和我的代码获取他们注册时的快速输入
app.post('/', function(req, res) {
//help 2
console.log(req.body.password);
console.log(req.body.name);
res.redirect('/signin');
});
帮助1:我在那里做什么?
帮助2:我在那里放了一个类似collection.insert的mongodb代码吗?如果是这样,我如何建立从Web应用程序到数据库的连接?
答案 0 :(得分:3)
对于“help 1”,这是您在数据库成功打开时要执行的代码。例如,您可能希望使用db.collection(collectionname, callback)
打开集合并将它们分配给变量。您可能还想在此处放置一些控制第一次启动实际服务器的代码,因为除非数据库连接已成功打开,否则您不想运行Web服务器。您还应该检查所有mongo命令的err
。
对于“帮助2”,您应该参考此处的节点驱动程序文档:https://github.com/christkv/node-mongodb-native/tree/master/docs
您可以通过节点驱动程序查找/更新/插入调用到mongodb。在大多数情况下,它们与JS shell上的mongo命令非常相似,但显然它们采用了回调参数。