Archive for the ‘restful’ Category

【Rails2.3.4】 ./script/plugin install git://github.com/rails/country_select.git

Tuesday, September 29th, 2009

今更ですが、

Rails2.2からcountry_selectメソッドがなくなりました。

なんでrails2.2以前からバージョンあげた場合は、別途用意されているプラグインを入れてください。

./script/plugin install git://github.com/rails/country_select.git

[RMagick] ImageList プロパティ一覧

Wednesday, March 11th, 2009

RmagickのImageListプロパティ一覧

詳細はこちら
http://studio.imagemagick.org/RMagick/doc/imageattrs.html

使用しそうなやつ。

[RMagick] ネットワーク経由で画像の送信

Tuesday, March 10th, 2009

ネットワーク経由で画像の送信してみる。
経緯としては、
今、画像用のAPIを開発しようとしていて、
ネットワーク経由で画像データをどうやって渡そう。ってとこからはじまりました。
作業自体はシンプルですが、一応自分用に書き留めておくことにしました。

使用する言語は表題通りRMagickです。
RMagick Reference
http://studio.imagemagick.org/RMagick/doc/

ネットワークはHTTP/HTTPSでの送信になります。

流れとしては以下な感じです。
①[Client] 画像データ取得&加工
②[Client] 画像データ送信
③[Server] 画像データ受信
④[Server] 画像データ解析&保存

検証

①【[Client] 画像データ取得&加工】

Railsコンソールで試しているのでデフォルトで入っているrails.pngを使用します。

②【[Client] 画像データ送信】
次にhttpで送信してみます。
そのまま上記のコンソール上でhttpで送信します。
open-uriを使えば楽チンです。
試しにパラメーター「?image=」にいれてみます。
ただ、readデータそのままだと文字化け引き起こして送信できないので
Base64変換する必要がある。さらにBase64だと”+”や”/”が問題を起こす事もあるので
さらに URI.escapeをしてあげる。
Base64変換 → URI.escapse

※HTTP圧縮
実際に送信する時は、httpクライアントにヘッダーで圧縮アルゴリズムを使用してサイズを縮小する必要があります。
ほとんどのWEBブラウザでは自動的に付加するが、プログラムクライアントではされていない。
HTTP圧縮用ヘッダー
Accept-Encoding: gzip,compress

③【[Server] 画像データ受信】 & 【[Server] 画像データ解析&保存】
サーバー側ではimageパラメーターで渡されてきたデータを取得&解析します。
基本的には、送信時の逆の流れを行えばいいので、
URI.decode >> Base64.decode64(params[:image])
という事になります。
解析したファイルにリサイズなどの処理を加えたいので、そのままRMagickに渡します。

基本的な流れ。

あとは上記にリサイズなどの処理を追加すればよいのかなと。

[RestOnRailsメモ] Restful調査

Wednesday, February 4th, 2009

RestfulなWEBサイトを構築。

中規模~なサイト構築を汎用的に作めためには、やはりとSoapプロトコルなど共通インターフェイスを用意して統一することで実装することができる。
SOAPかRESTかで迷いどころだが、Railsが標準で対応したRESTを試してみる事にする。

【Restful 概要】

【RESTFUL 参考サイト】

・ REST vs SOAP
http://www.xmlconsortium.org/wg/web2.0/teigensho/4–REST-SOAP.html

・ RESTとSOAP:Web 2.0時代に意識され始めた2種類のWebサービス
http://itpro.nikkeibp.co.jp/article/Watcher/20060315/232492/

・ 天使やカイザーと呼ばれて: 丸レクでREST on Railsについて話をしてきました
http://www.eisbahn.jp/yoichiro/2007/12/rest_on_rails.html