2017-11-10 9 views
0

githubにyamlファイルが格納されています。Githubからノードを使用してYAMLファイルシステムをダウンロード

team1.yaml 
team2.yaml 
team3.yaml 
... 
... 
team100.yaml 

私が使用してzipballにそれらのすべてを抽出することができます。素晴らしい作品https://github.com/my-repo/zipball/masterを。しかし、このzipballをノードサーバーでどのように使用するのか分かりません。私はファイルの名前だけでなく、もっと重要なのは彼らのコンテンツが必要です。

希望する出力は、クライアントサイドアプリケーションで使用するJSONオブジェクトのYAMLファイルです。

アイデア?

+0

ジップボールを解凍するには、npmモジュールを使用する必要があります。多くの場合、npmでジップを検索し、解凍したり、解凍して見つけます。一旦抽出されると、ファイルを読み込んでjs-yamlなどで解析し、JSオブジェクトを取得します。 – lecstor

+0

私はこれらのnpmモジュールの束に見えますが、それらのどれもがリモートURLを使ってzipをつかまえることはできません。それらはすべてサーバー上にzipが必要です。 – Sokies

+0

はい、 'request' zipballを取得するのに類似しています。あなたはそれを解凍モジュールにパイプし、ファイルをディスクに書き込むか、メモリ内で解析することすらできます。 – lecstor

答えて

0

request-promisesuperagentまたは他のモジュールを使用してzipballをダウンロードし、ドライブに保存します。 node-tmpを使用して、それを格納する一時ディレクトリを作成することができます。

ジップボールをappropriate moduleで解凍します。私は推奨しません。 js-yaml

スタート最初の基礎とし、それが働いてもらうとJSオブジェクトに

解析ファイル。いったんそれを持っていれば、ディスク書き込みを回避してメモリ内でそれを実行しようとする必要があるかどうかを判断することができますが、それは最良の選択肢ではない可能性があります。

関連する問題