2017-01-04 16 views
6

Firebaseストレージからフォルダ全体をダウンロードします。 DownloadURLを取得することにより、以下のように1つのファイルをダウンロードすることができます。しかし、それはフォルダのための仕事ではありません。Firebase Storageからフォルダ全体をダウンロードする方法は?

var storageRef = firebase.storage().ref(); 

    // Create a reference to the file we want to download 
    var starsRef = storageRef.child(path); 

    // Get the download URL 
    starsRef.getDownloadURL().then(function(url) { 
    // Insert url into an <img> tag to "download" 
    ImageUrl = url; 

    console.log(ImageUrl); 
    }).catch(function(error) { 
    switch (error.code) { 
     case 'storage/object_not_found': 
     // File doesn't exist 
     break; 

     case 'storage/unauthorized': 
     // User doesn't have permission to access the object 
     break; 

     case 'storage/canceled': 
     // User canceled the upload 
     break; 

     case 'storage/unknown': 
     // Unknown error occurred, inspect the server response 
     break; 
    } 
    }); 

Firebaseからフォルダ全体をダウンロードするにはどうすればよいですか?

+0

質問? –

+0

@MikeMcDonaldすべてのファイルを含むzipフォルダをダウンロードしたいと思います。 – isuru

答えて

3

フォルダ内のすべてのファイルをダウンロードするAPIはFirebase Storageにありません。ファイルを1つずつダウンロードするか、すべてのファイルを含むzipファイルを作成する必要があります。

関連:あり

+0

上記の関連リンクからすべてのファイルを取得し、zipファイルを作成する方法が見つかりません。すべてのファイルを含むzipファイルを作成する方法を見つけるためのヒントを教えてください。お返事をありがとうございます。 – isuru

0

は、現在のフォルダ内のすべてのファイルをリストするFirebaseストレージにはAPI呼び出しではありません。このような機能が必要な場合は、ファイルのメタデータ(ダウンロードURLなど)をリストする場所に保存する必要があります。 Firebase Realtime Databaseはこれに最適で、他のユーザーと簡単にURLを共有することもできます。

私たちのFriendlyPixサンプルアプリでは、これに関連する良いサンプルが見つかります。ウェブ版の関連コードはhereですが、iOSとAndroidのバージョンもあります。すべてのファイルの配列、すべてのファイルを含むzip圧縮フォルダ、または何か他のもの:あなたが意図した動作があることを期待するもので

See this question

+1

[元の回答](http://stackoverflow.com/a/37337436/2311651)への参照を追加する必要があります。 – GrafOrlov

関連する問題