我想開發一個同步服務器(想:SVN就像),在一個請求中接受來自客戶端的一個或多個文檔(JSON字符串) (JS對象的JSON字符串化數組),將它們插入/更新到mongodb中併發送一個響應 - 這是一個包含每個文檔的插入/更新狀態(以及一些更多信息,如mongo中的_id)的JSON字符串。Node.js,MongoDB - 插入/更新多個文檔併發送一個響應
如果是一個文件,我可以做一個插入/更新,並在其回調中,我可以發送迴應。
collection.insert(_data, function(error, result) {
if(error) res.send('error');
else res.send(JSON.stringify({result: result}));
});
但是如何做到這一點,當我有多個文件。我可以在前一個回調中插入/更新一個文檔。但是我擔心如果我這樣做的話,我最終會遇到可怕的代碼階梯(我可以在一個函數中執行它,並且遞歸,是的)。
任何幫助將不勝感激。順便說一句,我使用這個驅動程序:http://mongodb.github.io/node-mongodb-native/
注意:我沒有看批處理插入或更新,因爲每個正在處理的文檔需要單獨處理。有些可能需要插入,一些更新,然後有版本號&同步狀態檢查等。
+1這正是我一直在尋找的。會試着讓你知道它是怎麼回事。 – techfoobar
完美無瑕地工作。謝謝。 – techfoobar
很高興聽到它:)異步是我最喜歡的模塊之一,並在我的所有項目中經常使用。對於這樣的事情來說非常方便。 – mattsch