module Roda::RodaPlugins::InvalidRequestBody::RequestMethods
Public Instance Methods
Source
# File lib/roda/plugins/invalid_request_body.rb, line 73 def POST super rescue => e handle_invalid_request_body(e) end
Handle invalid request bodies as configured if the default behavior raises an exception.
Calls superclass method
Private Instance Methods
Source
# File lib/roda/plugins/invalid_request_body.rb, line 82 def handle_invalid_request_body_empty_400(e) response.status = 400 headers = response.headers headers.clear headers[RodaResponseHeaders::CONTENT_TYPE] = 'text/html' headers[RodaResponseHeaders::CONTENT_LENGTH] ='0' throw :halt, response.finish_with_body([]) end
Return an empty 400 HTTP response for invalid request bodies.
Source
# File lib/roda/plugins/invalid_request_body.rb, line 93 def handle_invalid_request_body_empty_hash(e) {} end
Treat invalid request bodies by using an empty hash as the POST
params.
Source
# File lib/roda/plugins/invalid_request_body.rb, line 99 def handle_invalid_request_body_raise(e) raise Error, e.message end
Raise a specific error for all invalid request bodies, to allow for easy rescuing using the error_handler plugin.