28th Tue
Sinatra で静的ファイル
sinatra で画像ファイルを扱うためのメモ
##下策:直接アクションにベタ書き
[ユースケース] この画像1個だけでいいんです
ruby>>
get '/logo.png' do
content_type :png
send_file "logo.png"
end
<<--
##中策:パラメータとブロック引数で処理
[ユースケース] images/* に画像が多くてアクション列挙してられない
ruby>>
get '/images/:file.:ext' do |file, ext|
content_type ext
send_file "images/#{file}.#{ext}"
end
<<--
##上策:Rackに任せる
[ユースケース] 速度、効率的にフロントで捌きたい
ruby>>
use Rack::Static, :urls => ["/images"], :root => "public"
<<--
これで Rails/Merb でおなじみの public/images/* を捌く事ができる
posted by
maiha on Tue 28 Jul 2009 at 17:49 with 0 comments