Staus Puffer Problem mit Knoten Child_process
Ich versuche zum ausführen von curl mit Knoten child_process um eine JSON-Datei (über 220Ko) aus einem freigegebenen Ordner im lokalen Netzwerk. Doch es gibt eine Puffer-problem, dass ich nicht an gedacht haben.
Hier ist mein code:
var exec = require('child_process').exec;
var execute = function(command, callback){
exec(command, function(error, stdout, stderr){ callback(error, stdout); });
};
execute("curl http://" + ip + "/file.json", function(err, json, outerr) {
if(err) throw err;
console.log(json);
})
Und hier ist die Fehlermeldung die ich bekomme:
if(err) throw err;
^
Error: stdout maxBuffer exceeded.
at Socket.<anonymous> (child_process.js:678:13)
at Socket.EventEmitter.emit (events.js:95:17)
at Socket.<anonymous> (_stream_readable.js:746:14)
at Socket.EventEmitter.emit (events.js:92:17)
at emitReadable_ (_stream_readable.js:408:10)
at emitReadable (_stream_readable.js:404:5)
at readableAddChunk (_stream_readable.js:165:9)
at Socket.Readable.push (_stream_readable.js:127:10)
at Pipe.onread (net.js:526:21)
InformationsquelleAutor der Frage Yonnaled | 2014-05-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie verwenden, und legen Sie die
maxBuffer
option, wenn Siechild_process.exec
. Aus der Dokumentation:Die Dokumentation auch fest, dass der Standardwert von
maxBuffer
ist 200KB.Als ein Beispiel, das die maximale Puffer Größe erhöht sich auf 500KB folgenden code:
Darüber hinaus möchten Sie vielleicht, darüber zu Lesen,
http.get
um zu sehen, ob es in der Lage ist zu erreichen, was Sie zu tun versuchen.InformationsquelleAutor der Antwort Tim Cooper
Ich hatte ein ähnliches Problem und habe es behoben Umzug von exec, um zu laichen:
InformationsquelleAutor der Antwort lsampaio