--- title: Sinatraを初めて使ってみた author: kazu634 date: 2013-11-10 url: /2013/11/10/first_impression_on_sinatra/ geo_latitude: - 38.306436 geo_longitude: - 141.023255 geo_public: - 1 wordtwit_posted_tweets: - 'a:1:{i:0;i:1856;}' wordtwit_post_info: - 'O:8:"stdClass":13:{s:6:"manual";b:0;s:11:"tweet_times";s:1:"1";s:5:"delay";s:1:"0";s:7:"enabled";s:1:"1";s:10:"separation";i:60;s:7:"version";s:3:"3.7";s:14:"tweet_template";b:0;s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:1856;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}' categories: - ruby ---

Sinatra

個人的なプロジェクトで使うために、 Ruby 製の Web アプリケーションフレームワーク Sinatra を初めて使ってみました。これ、簡単に使えてすごいですね。

Gemfile

Gemfileには次のように書きます:

source 'https://rubygems.org'

gem "sinatra"
gem "thin"

保存したら、bundle installします。私はbundle install --path vendor/bundleとしています。

server.rb

名前は任意なのですが、今回はserver.rbとしました。とりあえずこんな感じで書いてみました:

#!/usr/bin/env ruby

require "rubygems"
require "bundler/setup"

require "sinatra"

get '/' do
  "Hello, Game."
end

実行してみる

それでは実行してみます。実行するにはruby server.rbをします。こんな感じです:

% ruby server.rb
== Sinatra/1.4.4 has taken the stage on 4567 for development with backup from Thin
Thin web server (v1.6.1 codename Death Proof)
Maximum connections set to 1024
Listening on localhost:4567, CTRL+C to stop

ブラウザでアクセスしてみます:

localhost:4567

最後に

get だけでなく、post などにも簡単に対応できるので、すごい簡単に使えて驚きました。個人的なプロジェクトで活用してみようと思います。参考にした/これから参考にするサイトはここらへんです:


Sinatra: Up and Running

Sinatra: Up and Running

posted with amazlet at 13.11.10
O’Reilly Media (2011-11-21)