web-dev-qa-db-ja.com

multer、multiparty、connect-multiparty + Nodejsの違い

Node世界に新しい。

ユースケース:

XLSファイルをAngularフロントでアップロードし、ノードで処理し、いくつかの操作を行ってから、JSONをMongo DBに保存するという単純なシナリオがありました。

Angularからファイルを受け取った後、私はNodeでファイルを解析/処理するための最良の方法は何かを探していました、そしてこれらの有名なノードモジュールに関する記事を見つけました-multermultipartyおよびconnect-multiparty

すべての記事は、対応するモジュールの使用方法を説明しており、(どちらを使用するか)を指示するものを見つけることができませんでした。

multerは、主にファイルをディスクストレージに保存しようとするときに使用されることがわかりましたが、これは私のユースケースでは不十分です。

だから私はmulterを無視するべきですか、それとも実際にそれを使うべきですか?

multipartyconnect-multipartyを実際に使用する必要があるのはいつですか?

13
BeingSuman

この質問には、いくつかのオプションがリストされています。

ExpressJS 4.xでファイルをアップロードする方法

マルチフォームデータを直接解析し、これらの上に構築されたミドルウェアを表現するモジュールがあります。

直接解析するためのGithubスターによる上位3つのモジュールは、ノード形成可能(3376)、バスボーイ(814)、ノードマルチパーティ(557)です。

上位のミドルウェアはmulterです(busboy上に構築され、2515つ星)。 connect-multipartyには、これを使用しないことを提案するメモがあります。 connect-busboyは4年間更新されていません。

これに基づいて、Expressミドルウェアが必要な場合は、node-formidable、busboy、またはmulterをお勧めします。

また、multerにはMemoryStorageメモリストレージエンジンがあることに注意してください。

11
Simon D