2016-09-12 3 views
2

Ich muss eine große JSON-Datei von Node nach Python senden. Ich kann den child_process mit spawn erstellen, um die Python-Datei aufzurufen, aber ich kann nicht herausfinden, wie ich die Daten dorthin senden soll. Ich habe versucht, Pipe zu verwenden, aber ich verstehe die Dokumentation nicht.Große JSON-Zeichenfolge von NodeJS an Python senden

Code:

var dataset = JSON.stringify(doc.data); 

// Call the python API 
try { 
    var py = require('child_process').spawn('python3', ['api.py', analysis, input]); 
} catch(error) { 
    console.log(error); 
} 

// Pipe the data to the Python module 
py.stdin.pipe(fs.createWriteStream(dataset)); 
py.stdin.end(); 

Fehler:

Uncaught Error: ENAMETOOLONG: name too long, open [file data printed to console here] 
+0

tun sollten Sie sollten einige Zuhörer auf Ereignisse einrichten, um die Stream-Fehler zu behandeln und wenn der Strom endet. –

+0

http://luderamsey.io/child – Hitmands

Antwort

2

Here ist eine ziemlich gute Anleitung, was Sie zu tun versuchen!

Scheint, wie Sie auch py.stdin.write('json data');

+0

Perfekt, danke! –

Verwandte Themen