Module: CloseYourIt::Rails::RequestBody
- Defined in:
- lib/closeyourit/rails/request_body.rb
Overview
Estrae i params del body della richiesta (request.data) al momento dell'EVENTO — mai
eagerly a ogni richiesta (zero overhead sul percorso felice). Preferisce i params già
parsati da Rails/Rack presenti in env; ripiega sulla rilettura di rack.input (con rewind)
solo per JSON/form ≤ MAX_BODY_BYTES. Output sanitizzato (upload → "[FILE: …]", oggetti →
"[OBJECT: …]", stringhe troncate) e scrubbato con la stessa denylist del resto del client.
Constant Summary collapse
- MAX_BODY_BYTES =
65_536- MAX_DEPTH =
8- MAX_STRING =
1024- FORM_TYPE =
"application/x-www-form-urlencoded"- JSON_TYPE =
"application/json"
Class Method Summary collapse
Class Method Details
.extract(env) ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/closeyourit/rails/request_body.rb', line 23 def extract(env) params = parsed_params(env) || raw_params(env) return nil if params.nil? || params.empty? Scrubber.new(CloseYourIt.configuration).filter_params(sanitize(params, 0)) rescue StandardError nil end |