Method: Sinatra::API.process!

Defined in:
lib/sinatra/api.rb

.process!(params, request) ⇒ Object



83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'lib/sinatra/api.rb', line 83

def process!(params, request)
  request.body.rewind
  raw_json = request.body.read.to_s || ''

  unless raw_json.empty?
    begin
      params.merge!(self.parse_json(raw_json))
    rescue ::JSON::ParserError => e
      logger.warn e.message
      logger.warn e.backtrace

      instance.halt 400, "Malformed JSON content"
    end
  end
end