module SinatraOnlyJSON

Constants

VERSION

Public Class Methods

included(klass) click to toggle source
# File lib/sinatra/only-json.rb, line 21
def self.included(klass)
  # JSON Support
  klass.use Rack::PostBodyContentTypeParser
  klass.use JSONStringify
  klass.before { content_type :json }

  # CORS Support
  klass.register Sinatra::CrossOrigin
  klass.configure { klass.enable :cross_origin }
  klass.options "*" do
    response.headers["Allow"] = "HEAD,GET,PUT,POST,DELETE,OPTIONS"
    response.headers["Access-Control-Allow-Methods"] = "GET,PUT,POST,DELETE"
    response.headers["Access-Control-Allow-Headers"] = "X-Requested-With, X-HTTP-Method-Override, Content-Type, Cache-Control, Accept"
    200
  end
end