2014-07-17 50 views
1

我有一個很大的工作,我分叉到一個子進程。但我想讓子進程處理響應而不是主線程。所以子進程會生成一個很大的舊JSON對象,但我不希望它將它發送回主進程。我只是想讓它自己發回應答。如何讓子進程寫入Node中的http響應?

function doWork(req,res) { 

    // CALL CHILD PROCESS, And have the child res.json(bigObject) 
} 
app.get('/dowork', doWork); 

我想通過響應('res'),讓孩子寫回來。有沒有辦法在Node中做到這一點?

回答

-1

目前沒有辦法做到這一點。您以前可以將文件描述符發送給子進程,但之前該功能已被刪除。您也可以在產卵時設置customFds,但現在已經廢棄了相當長一段時間。

即使您可以傳遞套接字來執行子進程,您仍然必須以某種方式重新創建響應對象。

最好的辦法是讓孩子向父母發送狀態碼和任何標題,將其設置在父母的響應對象上,然後將孩子輸出的其餘部分輸入回覆中(例如child.stdout.pipe(res);) 。

+0

我也在尋找喜歡的東西 – Sohan