ファイルのアップロードというのは意外と厄介な問題です。保存するストレージを逼迫しますし、ユーザがアップロードしたファイルがそのまま使える訳でもありません。スマートフォンの性能向上に伴ってサイズが格段に大きくなっているのも問題です。 そこで使ってみたいのがattacheです。ファイルアップロードと画像加工をセットにしたソフトウェアです。

attacheの使い方

attacheには2つのファイルアップロード方法があります。1つはPUTメソッドを使いつつバイナリデータを送信する方法で、フォームなどから使えそうです。もう一つはGETメソッドでファイルのURLを指定する方法です。

ファイルをアップロードすると、パスなどがJSONで返ってきます。

後は記法に沿ってファイルサイズを指定するとその範囲でコンテンツが返ってきます。

ダイナミックにファイルサイズが変更できるのは便利です。

attacheはHerokuにデプロイできますので、ファイルアップロード処理を疎結合にできます。もちろんHerokuではなく自分の立てたサーバにデプロイすることもできますのでアーキテクチャの自由度が上がることでしょう。

attacheはRuby製のオープンソース・ソフトウェア(MIT License)です。

choonkeat/attache: Yet another approach to file upload