Sha256: 52c3b7fc0c47b3c5e33a8a7a0558b2bb5f108c73ff1c4463819205364c146008
Contents?: true
Size: 564 Bytes
Versions: 3
Compression:
Stored size: 564 Bytes
Contents
module Schneiderlein class FlyCatcher < Struct.new(:app) def call(env) begin app.call(env) rescue ActionDispatch::ParamsParser::ParseError => e env['rack.schneiderlein.parse_errors'] ||= [] env['rack.schneiderlein.parse_errors'] << e app.call(remove_errors_from(env)) end end private def remove_errors_from(env) env['rack.input'] = StringIO.new env['rack.errors'] = StringIO.new env['RAW_POST_DATA'] = '' env['CONTENT_LENGTH'] = '0' env end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
schneiderlein-1.2.0 | lib/schneiderlein/fly_catcher.rb |
schneiderlein-1.1.0 | lib/schneiderlein/fly_catcher.rb |
schneiderlein-1.0.0 | lib/schneiderlein/fly_catcher.rb |