FJCT_ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

非公式Rubyライブラリがファイルストアのダウンロードに対応しました

非公式なmBaaS用Rubyライブラリ、ncmb-ruby-clientがファイルストアのダウンロードに対応しました。ファイルストアにアップロードしたファイルをまとめてダウンロードするのに使えます。

インストール

インストールはRubygemsで行います。

gem install ncmb-ruby-client

使い方

簡単な使い方は以下の通りです。

file = NCMB::NFile.new("ファイル名")
file.get # ファイルの内容を取得

ファイルストアにある全データを取得

以下のようなスクリプトでファイルストアにあるファイルをすべてダウンロードできます(権限によってできないものもあります)。

NCMB.initialize application_key: application_key,  client_key: client_key

file_store = NCMB::DataStore.new('file')

limit = 1000
skip = 0

while true
  list = file_store.skip(skip).limit(limit).get
  list.each do |item|
    next if File.exist? item.fileName
    file = NCMB::NFile.new(item.fileName)
    fp = open(item.fileName, 'w')
    fp.write(file.get)
    fp.close
  end
  break if list.length < limit
  
  skip += limit
end

バックアップ目的に使えるのではないでしょうか。


ファイルストアのデータは管理画面のエクスポート機能でも対応していません。写真コンテンツをアップロードしたりするアプリでは定期的なバックアップも大事でしょう。Rubyライブラリを使って安全なファイル管理を行ってください。

moongift/ncmb-ruby-client: A simple Ruby client for the Nifty cloud mobile backend REST API