Ich habe einen beschreibbaren Stream, den ich mit einem eigenen Stream umhüllen möchte, um einige Daten an etwas voranzustellen in den Ausgabestrom.Erstellen eines schreibbaren Node.js-Streams, der Daten an einen anderen beschreibbaren Stream weiterleitet, aber einige seiner eigenen Daten voranstellt.
Ich würde normalerweise schreiben inputStream.pipe(outputStream)
, wo inputStream
foo bar
liefern würde und outputStream erhalten würde foo bar
.
würde Ich mag Lage sein inputStream.pipe(proxyStream('prefix ', outputStream))
zu schreiben, wo inputStream
foo bar
bieten würde, aber outputStream
prefix foo bar
empfangen würde.
Ich habe den folgenden Code versucht, aber ich bekomme Error: write after end
fast sofort nach dem Start der Leitung.
class DetectStream extends stream.Writable {
constructor (prefix, output) {
super();
this._output = output;
this._output.write(prefix, 'utf-8');
}
_write (chunk, enc, next) {
this._output.write(chunk, enc, next);
}
}
Sie können den Stream ändern, bevor sie '.pipe vorbei()' – guest271314
Wie kann ich den Strom ändern? –
Lese 'inputStream', modifiziere, konvertiere zurück nach' WritableStream', passiere nach '.pipe()' – guest271314