我目前正在構建一個接受來自python腳本的輸入的節點應用程序。我們打算做這樣的管道pyton script.py | node index.js
。如何檢查node.js進程是否從stdout進行管道輸入?
我想檢查是否有輸入輸入。這樣,如果有數據正在輸送,請啓動快速服務器。但是,如果沒有管道數據退出節點進程。我目前正在檢查流的輸入,但我意識到如果沒有來自stdout的輸入,我無法做到這一點。有誰知道更好的解決方案?
這是我到目前爲止。
import app from "./app";
import { PORT } from "./config";
process.stdin.setEncoding("utf8");
let key = "";
process.stdin.on("data", data => {
key += data;
});
process.stdin.on("end",() => {
global.key = key;
if(global.key === ""){
console.log("KEY UNDEFINED");
process.exit(1);
}
app.listen(PORT,() => {
console.log(`Application started on port:${PORT}`);
});
});