Sinatra で JSON API
#sinatra #json
JSON なパラメータを params でアクセスできない
JSON.parse(request.body.read, symbolize_names: true)
rack-contrib の Rack::PostBodyContentTypeParser
JSON を返す
content_type :json して to_json
sinatra-contrib の sinatra/json の json helper
sinatra-contrib sinatra/json
https://github.com/sinatra/sinatra-contrib/blob/master/lib/sinatra/json.rb
デフォルトのエンコーダは、MultiJson になっている。渡してオブジェクトを MultiJson.encode で JSON にしている。MultiJson.dump と MultiJson.encode は同じものというか encode が dump のエイリアスになっている。
https://github.com/sinatra/sinatra-contrib/blob/master/lib/sinatra/json.rb#L111-L119