2015-08-19 79 views
1

我想使用Promises在node.js中運行mongod命令,以便數據庫操作只有在mongodb進程啓動後才能運行。我試了下我的手,但失敗了:Bluebird Promise中的Nodejs exec mongodb命令

var Promise = require("bluebird"); 

var execAsync = Promise.promisify(require('child_process').exec); 

execAsync("~/mongodb/bin/mongod").then(function(result){ 
    console.log("started mongodb..."); 
}).catch(function(error){ 
    console.log("error in starting mongodb..."+JSON.stringify(error)); 
}); 

有什麼建議嗎?

+0

*但失敗* - 你爲什麼這麼認爲? – thefourtheye

+0

我看到這個過程已經開始,我無法看到日誌中顯示「已啓動mongodb ...」 – user3601166

回答

0

你不應該在節點中啓動你的mongod進程,你應該以其他方式做。然後你可以檢查它是否在運行,而不是它是否正常啓動。