javascript – 如何使用node-mongodb-native连接到Heroku?

我对如何连接到Heroku上的MongoLab感到非常困惑.
要使用uri连接到Heroku,我试图遵循这个例子:
http://experiencecraftsmanship.wordpress.com/2012/01/06/heroku-node-js-mongodb-featuring-the-native-driver/

我看了他的web.js和deep.js.
他们都做了类似的事情:

connect.createServer(
    require( 'connect-jsonrpc' )( contacts )
).listen( port );

但那么只有’contacts’中的数据库查询才能传递到这个服务器呢?
我是否允许为每个数据库访问方法执行多个connect.createServer?

以下是我在本地连接到MongoDB时的代码的一部分.我不确定如何修改它以连接到Heroku上的MongoLab.

有人可以教我如何修改我的代码连接?或解释一些这些概念?我不知道为什么我发布的那个网站的作者使用了这么多的回调来进行数据库调用,当我的方法看起来很简单时(我是JavaScript的新手,回调不好).

var app = module.exports = express.createServer(
  form({ keepExtensions: true })
);

var Db = require('mongodb').Db;
var Server = require('mongodb').Server;
var client = new Db('blog',new Server('127.0.0.1',27017,{}));

var posts;
var getAllPosts = function(err,collection) {
  collection.find().toArray(function(err,results) {
    posts = results;
    console.log(results);
    client.close();
  });
}


app.get('/',function(req,response) {
  client.open(function(err,pClient) {
    client.collection('posts',getAllPosts);
  });

  // some code
  response.render('layout',{ posts: posts,title: 'Raymond',contentPage: 'blog' });
});
最佳答案
您连接到您的mongolab数据库(因此您无法创建新的“博客数据库). process.env.MONGOLAB_URI也包含数据库名称.看你的mongolab uri:

heroku config | grep MONGOLAB_URI

它看起来像:mongodb:// heroku_app123456:password@dbh73.mongolab.com:27737 / heroku_app123456

在github上有an example how to connect and retrieve data from a mongolab database.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...