Node.js:使用 spawn 将图像作为 base64 传递给 python

Node.js: Passing image as base64 to python with spawn

我正在尝试将图像作为 base64 传递给 python,以便使用 spawn 进行处理,如下所示:

return new Promise(function(resolve, reject) {
      const pythonProcess = spawn('python',["./python.py", imageDataURI]);
      pythonProcess.stdout.on('data', (response) => {
        resolve(response);
      });
    });

但我得到 error: Error: spawn E2BIG 我想它太大了,不能像这样传递,有没有其他方法可以将它传递给 spawn?

似乎相关:

Node / child_process throwing E2BIG

感谢 ottomeister 的回答,我是这样做的:

在节点中:

const pythonProcess = spawn('python',["script.py"]);

pythonProcess.stdin.write(data);
pythonProcess.stdin.end();
pythonProcess.stdout.on('data', (result) => {
    handleResult(result);
});

在python中:

import fileinput

for line in fileinput.input():
    input +=line

# Process input

sys.stdout.write(result)
sys.stdout.flush()