2013-10-04 155 views

回答

0

Heroku docs,對於MongoLab單節點計劃的URI格式爲:

mongodb://dbuser:[email protected]:port/dbname 

您可以使用正則表達式(和/或其他字符串函數)來提取所需的變量用於創建MongoStore:

function createDBSettings(mongoLabURI) { 
    var dbSettings = {}, 
     regexp = /^mongodb:\/\/(\w+):(\w+)@(\w+):(\w+)\/(\w+)$/, 
     matches = regexp.match(mongoLabURI); 

    dbSettings.dbname = matches[5]; 
    dbSettings.host = matches[3]; 
    dbSettings.port = matches[4]; 
    dbSettings.username = matches[1]; 
    dbSettings.password = matches[2]; 

    return dbSettings; 
} 

var MongoStore = require('connect-mongo')(express); 
var store = new MongoStore(createDBSettings(process.env.MONGOLAB_URI)); 

您應該可以對羣集計劃URI執行相同的操作。


看看node-mongodb-native的源代碼。 URI解析發生在MongoClient.connect()