5
私は、明示的に使用して、spawnedコマンド(ffmpeg、重要ではない)からstdoutをパイプしていますが、子procが失敗した場合、私はまだ200を取得します。生成されたコマンドの出力をパイプするときにエラーを返すにはどうすればよいですか?
私は500を返すことはできますか?終了コードはゼロではありませんでしたか? (私はヘッダがaleadyそれまでに送られてきたと思います):
const express = require('express');
const { spawn } = require('child_process');
var app = express();
app.get('/video', function(req, res) {
var cmd = "ffmpeg";
var args = ["--wat"];
var proc = spawn(cmd, args);
res.contentType('video/mp4');
proc.stdout.pipe(res);
proc.stderr.pipe(process.stdout);
proc.on("exit", code => {
console.log("child proc exited:", code);
//res.status(code > 0 ? 500 : 200).end();
});
res.on("close",() => {
proc.kill("SIGKILL");
});
});
app.listen(4000);