問題タブ [node-streams]
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 - node js/sails jsで入力ファイル(画像)ストリームを分割する方法は?
入力ストリームを 2 つのストリームに分割したい。ファイルのアップロードで2つの画像を送信しているため..
だから私のコントローラーで私はこのように書きます
これには 2 枚の画像の詳細が含まれます。たとえば、長さは 2 つの画像の合計を示します。
だから私が欲しいのは以下のようなものです:
どのような変更を加える必要がありますか? どうすればこれを達成できますか?
node.js - すべてのストリームが終了するのを待つ - ファイルのディレクトリをストリーミングする
ファイルのディレクトリをアップロードするために、pkgcloudでclient.uploadを使用しています。すべてのストリームが終了した後にコールバックを実行するにはどうすればよいですか? 各ストリームの「終了」イベントを登録し、それらがすべて発生した後にコールバックを実行する組み込みの方法はありますか?
node.js - エラーの発生時にノード ストリームがハングする
CSV をチェックするストリームがあります。応答を送り返した後でもエラーが発生した場合を除いて、正常に動作します。
destroy メソッドを追加することで修正できましたが、それでも遅く、数秒間ハングします。変換ストリームを終了/破棄するより良い方法はありますか?
編集:
バスボーイでストリームを使用する方法は次のとおりです。
json - グロブの代わりに gulp.src(一部のデータ) を送信する方法はありますか?
JSON を編集して、それを gulp ストリーム経由で送信できるようにしたいと考えています。gulp-json-edit があることは知っていますが、それがどのように行われるかを理解し、自分でやりたいと思っています。この場合、Basic 権限を変更します。
たとえば、次のようなものです。
data
ただし、グロブではないため、これはもちろん機能しません。どうすればdata
それを gulp.src() に渡すことができるように操作できますか?
javascript - 複数のオブジェクトをストリーム内の単一のオブジェクトにマップする
新しい形式にマップして新しい DB にアップロードする必要がある非常に大きな (> 500MB) JSON ファイルがいくつかあります。
古い形式:
新しいフォーマット:
最初に「元の」サイズを処理して、このような小さなデータセットでこれを達成していました:
問題は非常に大きなデータセットにあり、数百メガバイトの JSON を一度にメモリにロードすることはできません。これはストリームを使用する絶好の機会のように思えますが、もちろん、ファイルをチャンクで読み取る場合、小さな配列で .find() を実行して「元の」サイズを見つけることはできません。ファイル全体をスキャンしてオリジナルを見つけ、もう一度スキャンして見つかったものに他のサイズを追加すると、とにかくデータセット全体がメモリに保存されます。
オブジェクトの単純な 1 対 1 の再マッピングを行っていた場合、これは素晴らしいことです。
確かに、この種の問題に遭遇するのは私が最初ではありません。過去にどのようなソリューションが使用されましたか? どうすればこれにアプローチできますか?
node.js - 条件付きで未消費の http.IncomingMessage の処理
アップストリームの http.IncomingMessage を、restify サーバー経由でクライアントに転送したいと考えています。これが私が今まで思いついたものです。転送機能を提供します。ただし、これによりメモリリークが発生する可能性があると思います。
- アップストリームの場合、このコードは決して消費されない (いいえ) ため、本体 (1) を
404
リークすると思いますか?upstreamRes
pipe(somewhere)
- ボディをリークしてはならない明白な解決策 (2) の 1 つ
upstreamRes
は、 にパイプすること/dev/null
です。この問題の代替/より良い解決策はありますか?