2015-10-13 75 views
0

我使用Node作爲web服務器,我想將每個請求記錄到數據庫中。我也希望用戶儘可能快地接收響應,所以我想出了這個代碼:Nodejs:在res.send之後做其他事情

// ... putting together the response_data 
res.send(response_data); 
// ... now log the request into the DB and maybe do additional stuff 

它的工作,我喜歡把一些的(時間)的想法昂貴的東西發送後面。但是因爲我對Node很陌生,所以我在問這是否是一種常見模式?

關於Stackoverflow我只是發現人們有問題BC,他們試圖發送res.send後的額外數據 - 但我從來沒有聽到有人說「是啊,這是一個偉大的功能,爲您的響應能力」,所以我不知道是否有一個這個解決方案的主要缺陷,我只是還沒有看到...

回答

3

只要你不需要發送任何東西回到用戶作爲「額外」的東西的結果,那麼你的方法是好的。

大多數人遇到的問題是在之後嘗試將數據發送給響應,響應已經發送,例如,

res.send(response_data); 
// do additional stuff 
res.send(additional_data); // KABOOM! 
相關問題