現在、NodeJS (Koa フレームワークを使用) で POST データを処理する子プロセスを生成しようとしています。
理想的には、リダイレクトする前に子プロセスが終了するのを待ちたいのですが、子プロセスは非同期であるため、コードは常に最初にリダイレクトします。私は長い間これを修正しようとしてきましたが、部分的に解決するためのいくつかのハックな方法を思いつきましたが、非常にきれいで使いやすいものはありません。
これを処理する最善の方法は何ですか?
以下は、ポストルートの関数です (koa-route ミドルウェアを使用)。
function *task() {
var p = spawn("process", args);
p.on("data", function(res) {
// process data
});
p.stdin.write("input");
this.redirect('/'); // wait to execute this
}