問題タブ [node.js-stream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - バッファを持つサーバーにイメージを書き込む方法は?
Expressjs で画像をアップロードします。これは、7 ビットをエンコードするバッファとして提供されます。
イメージとしてファイル システムに保存する方法を教えてください。何かが保存されますが、それは画像ではありません:
ファイルが破損しているか、サイズが大きすぎるため、Windows フォト ビューアーでこの画像を開くことができません。
これらは機能しません:
javascript - 標準出力にパイプした後、標準入力をリセットするにはどうすればよいですか?
こんにちは、最初の質問です。とにかく、ストリームと、ストリームとプロミスを組み合わせたより複雑な構成をよりよく理解するのに役立つ小さな実験を書いています。
ただし、現在解決できない問題に遭遇しました。次のスクリプトを実行して入力を入力し、ctrl-d を押して入力を終了すると、ノードは必要に応じて標準入力から読み取ろうとしますが、標準入力が終了したためすぐに閉じます。それで、これを書くためのより良い方法はありますか?または、標準入力ストリームをリセットして入力を再度取得する方法はありますか? または、終了イベントが約束を解決するのを待つために入力を求めるのをやめるより良い方法はありますか?
また、注記: Node 5.1.0 で実行、ES2015 を使用 (Babel 6 経由)
javascript - vinyl-fs (gulp ファイル ストリーム) がコールバックまたはプロミスを起動する前に .dest 書き込みを終了しない
コードを起動して宛先フォルダーのコピーを S3 バケットにアップロードする前に、vinyl-fs (gulpfs) ストリームを取得してすべての .dest ファイルの書き込みを完了しようとするのはイライラします。そのコピー操作では、ストリームがまだ書き込んでいないディレクトリが欠落し続けます。
問題は、vinly-fs がコールバック/プロミスをどのように処理するかです (そうですか?)。
私は実験のためにいくつかのテストコードをまとめましたが、そのコードが実行されると、.dest コマンドの後、Promise を起動する前に 5 秒間待機するようにストリームを強制したにもかかわらず、Promise はすぐに解決されます (書き込みが開始された後?)。現在、解決関数が起動し、5 秒後にプロンプトに戻ります。これに完全に行き詰まった。vinyl-fs なしで生活したくありませんが、何を試してもうまく再生されないようで、シーケンスとして機能させるにはこれが必要です (アップロードする前にすべてのファイルを書き出します)。
以下は私のテストコードです。これを設定したので、コードをファイルに簡単にダンプし、ソース ディレクトリを設定して、自分で試してみることができます。私はgulpjsの問題とstackoverflowを調べましたが、他の人も同じ問題を抱えていますが、決定的な答え/解決策は見当たりませんでした。
test.js
ところで、なぜ私が gulp.task を使用せずにプロミスを返し、別の gulp タスクとしてアップロードを実行しないのか疑問に思われるかもしれません。現在、gulp.tasks を cli 開始タスクに最小化しています。最終的には、このコードを実行するのと同じように、代わりにすごい「ノード テスト」を使用し、グローバルな gulp 依存関係と gulpfile.js をすべて一緒に削除します。Vinyl-fs は素晴らしいモジュールです! しかし、Gulp/Grunt/Brunch/Jake のようなものは買わないほうがよいと判断しました。
javascript - この Node.js コードで「終了」イベントが発生しないのはなぜですか?
ノードの初心者はこちら。.tar.xz
以下に示すコードを使用して、ファイルをダウンロードしてディレクトリに抽出しようとしています。
何らかの理由で'finish'
、tar ストリームのイベントは、アーカイブのコンテンツの抽出が終了した後でも発生していないようです。tarは npm 自身が管理しているライブラリなので、ここで何らかの間違いを犯していると思います。とにかく、なぜこれが起こっているのですか?それを修正するにはどうすればよいですか?
javascript - Node.js ストリーム情報を列挙不可にする
実行時にnode.js-streamから継承するクラスからこの種のデータを省略しようとしていますconsole.log()
:
...など
通常、私は次のようなことを試します:
しかし、PassThrough
実際にはオブジェクトのプロパティではないため、機能しません。からストリーム情報を非表示にするにはどうすればよいconsole.log()
ですか?
(免責事項: 設計によるものであり、非表示にするのはおそらく悪い考えであることは認識しています;)
node.js - 同じストリームを 2 回パイプすると、無限ループが作成されます
私は Node.js ストリームで練習していますが、次のコードに問題があります。
ロガーへの 2 つの呼び出しは、ロガー ストリームの異なるインスタンスであると予想していましたが、それらは同じように見え、無限ループに陥ります。
どうもありがとうございました。