我是新來的nodeJS,所以我只是嘗試從基礎開始的幾件事情。如何讓mongodb在appfog上工作?
我有一個問題,同時從MongoDB中檢索數據,所以這裏是代碼:
var port = (process.env.VMC_APP_PORT || 3000);
var host = (process.env.VCAP_APP_HOST || 'localhost');
var http = require('http');
var mongo = require('mongodb');
http.createServer(function (req, res) {
var mongoUrl = "mongodb://<userid>:<password>@linus.mongohq.com:10090/<db>";
if (process.env.VCAP_SERVICES) {
mongoUrl = process.env.MONGOHQ_URL;
}
selectTable(req, res, mongoUrl);
}).listen(port, host);
var selectTable = function (req, res, mongoUrl) {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.write("Start\n");
mongo.connect(mongoUrl, function (err, conn) {
conn.collection('Test', function (err, coll) {
coll.find({}, {}, function (err, cursor) {
cursor.toArray(function (err, items) {
for (i = 0; i < items.length; i++) {
res.write(JSON.stringify(items[i]) + "\n");
}
res.end();
});
});
});
});
}
這部作品在我的地方不錯,它顯示的行,但是當我把它上傳到我的appfog的應用程序之一它不顯示行,它只是停在「開始」處,沒有其他顯示。
請幫忙,非常感謝。
如何檢查'err'中返回的內容? – 2013-02-21 05:43:59
我相信你的MongoDB運行在不同的端口上(可能在27017年)。你檢查過了嗎? – 2013-02-21 06:56:14
process.env.VMC_APP_PORT - >我已經在這裏指定端口,並且我試圖打印完整的URL,看起來很好。 – peek4y 2013-02-21 07:48:52