module SinatraRequestBody::Helper

Public Instance Methods

_parse(data) click to toggle source
# File lib/sinatra_request_body/helper.rb, line 12
def _parse(data)
  begin
    null = nil
    eval(data)
  rescue Exception => e
    MultiJson.load(data, symbolize_keys: true)
  end
end
_symbolize(obj={}) click to toggle source
# File lib/sinatra_request_body/helper.rb, line 21
def _symbolize(obj={})
  if obj.is_a?(Hash)
    obj.symbolize_keys!
    obj.values.each do|value|
      _symbolize(value) if value.is_a?(Hash)
    end
  elsif obj.is_a?(Array)
    obj.each{|iterm| _symbolize(iterm)}
  end
end
merge_to_params() click to toggle source
# File lib/sinatra_request_body/helper.rb, line 6
def merge_to_params
  data_body = request.body.read.force_encoding("utf-8")
  data = _parse(data_body) if data_body.present?
  params.merge!(data) if data.present?
end