今更ですが、
Rails2.2からcountry_selectメソッドがなくなりました。
なんでrails2.2以前からバージョンあげた場合は、別途用意されているプラグインを入れてください。
./script/plugin install git://github.com/rails/country_select.git
今更ですが、
Rails2.2からcountry_selectメソッドがなくなりました。
なんでrails2.2以前からバージョンあげた場合は、別途用意されているプラグインを入れてください。
./script/plugin install git://github.com/rails/country_select.git
ネットワーク経由で画像の送信してみる。
経緯としては、
今、画像用の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に渡します。
基本的な流れ。
あとは上記にリサイズなどの処理を追加すればよいのかなと。
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