class Rack::ContentLength
header specified.
does not fix responses that have an invalid content-length
a content-length or transfer-encoding header. Note that this
Sets the content-length header on responses that do not specify
def call(env)
def call(env) status, headers, body = response = @app.call(env) if !STATUS_WITH_NO_ENTITY_BODY.key?(status.to_i) && !headers[CONTENT_LENGTH] && !headers[TRANSFER_ENCODING] && body.respond_to?(:to_ary) response[2] = body = body.to_ary headers[CONTENT_LENGTH] = body.sum(&:bytesize).to_s end response end
def initialize(app)
def initialize(app) @app = app end