appiariesってタイプしにくいよね
↓の萌え子ちゃんはappiariesの公式キャラクターで、管理画面(ダッシュボード)で利用の際のヒントをくれます。海外のサービスにはまずありえないと思うので、この点、parse.com なんかよりはるかに優れていると思います
ちなみにappiariesの無料プランはディスク容量100MBですが、parse.comは20GB以上使えます。たった200倍の違いです。
今回もruby使ってappiariesへのファイル保存と取り出しをやってみたいと思います。Googleから提供されたマテリアルデザインアイコンを入れてみました。
Google提供のマテリアルデザインアイコンについて
↓こういうのです
マテリアルデザイン化された750個のアイコンをGoogleが配布 | オクトバ - http://goo.gl/nF0BkN
ruby の rest-client 使います
require 'rest_client'
appiaries は国産のmBaasです
早速書いていきますね
ファイルのアップロード
前回 http://qiita.com/scleen_x_x/items/eef3a663e3a74b0c1675 で書いたのと同じです。
ret = JSON.parse RestClient::Request.execute(
:method => :post,
:url => uri,
:payload => {
:multipart => true,
:_file => File.read(filename),
:_id => fileid,
:_type => "image/jpeg",
:_tags => "thumbnail",
:_filename => filename
},
:headers => {'X-APPIARIES-TOKEN' => @appiaries_app_token, 'Content-Type' => 'multipart/form-data'}
);
こんな感じでファイルをアップロードできます。簡単ですね。@appiaries_app_token にはappiariesから提供されたTOKENを指定してください。
appiaries 側のパーミッション設定
appiaries 側にファイルを保存するコレクションのパーミッション(権限)設定で「登録と参照を全員」に指定します。これは認証を回避するためです。きちんとした会員制システムとかにするなら、それにあった権限の設定にしてね
オブジェクトIDの文字数制限20文字は本当にダメ
20文字は短すぎると思うんですけど・・・
Google は諸々のオブジェクトのIDの長さ32文字ぐらいとっているし・・・ファイル名をベースにしたIDも20文字だと作れない。これは困るなー。
ファイルのダウンロード
ダウンロード用のURLは最後に _bin をつけた形式になる。こんな感じです。
https://api-datastore.appiaries.com/v1/bin/_sandbox/material_icons/png/alarm_on/_bin
https://api-datastore.appiaries.com/v1/bin/_sandbox/material_icons/png/shopping_basket/_bin
https のみで http は使えない
こんな感じでパブリックに公開できる場合でもhttpsオンリーで、httpではアクセスできないようです。404戻ります。
ちなみに、 parse.com では保存したファイルは http ベースで公開されます。
おしまい
ヽ(゚ー゚ヽ)(ノ゚ー゚)ノわぁい