Sinatra::ContribのSinatra::JSONの話です。

SinatraでJSONを返すだけのものを作ろうとすると、意外と面倒であることに気づきます。Content Typeを設定して、レスポンスボディを返すという2手順が必要だからです。

require 'sinatra'
require 'json'
 
get '/' do
  content_type 'application/json'
  JSON.generate({message: 'Hello'})
end
 
get '/second' do
  content_type 'application/json'
  JSON.generate({message: 'Doumo'})
end

なので、ちょっとヘルパーメソッドを作ろうかなと考えるわけです。しかし、誰かが似たようなものを使っているはずです。すなわち、それがSinatra::ContribのSinatra::JSONです。

require 'sinatra'
require 'sinatra/json'
 
get '/' do
  json({message: 'Hello'})
end
 
get '/second' do
  json({message: 'Doumo'})
end

すっきりしました。ちょっとしたJSON APIだらけの何かを作るときに役立つのではないでしょうか。

リンク:

スポンサード リンク

この記事のカテゴリ

  • ⇒ Sinatra::JSONを使ってみる