我正在node.js中的postgis数据库上执行sql查询,该查询返回了GEOJSON对象。我想将该GEJSON(作为字符串)传递给同一服务器上的python子进程:
var spawn = require("child_process").spawn;
var process = spawn('python', ['scripts/hello.py', JSON.stringify(geoJson)]);
但是我在节点中收到此错误:
Error: spawn ENAMETOOLONG
...
我注意到使用较小的GEOJSON对象没有问题。
我的下一个解决方案是将GEOJSON对象从node.js写入文件,并且仅将路径传递给子进程,但是我想知道是否有更好的解决方案而不使用该临时文件。
答案 0 :(得分:0)
如何通过stdio流传递数据?
var spawn = require("child_process").spawn;
var process = spawn('python', ['scripts/hello.py']);
process.stdin.end(JSON.stringify(geoJson));