X7ROOT File Manager
Current Path:
/opt/alt/ruby19/lib64/ruby/gems/1.9.1/gems/rack-1.6.4/lib/rack
opt
/
alt
/
ruby19
/
lib64
/
ruby
/
gems
/
1.9.1
/
gems
/
rack-1.6.4
/
lib
/
rack
/
??
..
??
auth
??
backports
??
body_proxy.rb
(958 B)
??
builder.rb
(4.27 KB)
??
cascade.rb
(1.34 KB)
??
chunked.rb
(1.58 KB)
??
commonlogger.rb
(2.28 KB)
??
conditionalget.rb
(2.5 KB)
??
config.rb
(379 B)
??
content_length.rb
(840 B)
??
content_type.rb
(670 B)
??
deflater.rb
(4.57 KB)
??
directory.rb
(4.2 KB)
??
etag.rb
(2.11 KB)
??
file.rb
(4.09 KB)
??
handler
??
handler.rb
(3.25 KB)
??
head.rb
(484 B)
??
lint.rb
(29.26 KB)
??
lobster.rb
(1.97 KB)
??
lock.rb
(601 B)
??
logger.rb
(357 B)
??
methodoverride.rb
(1.01 KB)
??
mime.rb
(30.94 KB)
??
mock.rb
(5.68 KB)
??
multipart
??
multipart.rb
(1.14 KB)
??
nulllogger.rb
(951 B)
??
recursive.rb
(1.73 KB)
??
reloader.rb
(2.97 KB)
??
request.rb
(12.59 KB)
??
response.rb
(4.33 KB)
??
rewindable_input.rb
(3.19 KB)
??
runtime.rb
(961 B)
??
sendfile.rb
(5.18 KB)
??
server.rb
(10.8 KB)
??
session
??
showexceptions.rb
(11.7 KB)
??
showstatus.rb
(3.46 KB)
??
static.rb
(4.88 KB)
??
tempfile_reaper.rb
(670 B)
??
urlmap.rb
(2.46 KB)
??
utils
??
utils.rb
(20.86 KB)
Editing: chunked.rb
require 'rack/utils' module Rack # Middleware that applies chunked transfer encoding to response bodies # when the response does not include a Content-Length header. class Chunked include Rack::Utils # A body wrapper that emits chunked responses class Body TERM = "\r\n" TAIL = "0#{TERM}#{TERM}" include Rack::Utils def initialize(body) @body = body end def each term = TERM @body.each do |chunk| size = bytesize(chunk) next if size == 0 chunk = chunk.dup.force_encoding(Encoding::BINARY) if chunk.respond_to?(:force_encoding) yield [size.to_s(16), term, chunk, term].join end yield TAIL end def close @body.close if @body.respond_to?(:close) end end def initialize(app) @app = app end # pre-HTTP/1.0 (informally "HTTP/0.9") HTTP requests did not have # a version (nor response headers) def chunkable_version?(ver) case ver when "HTTP/1.0", nil, "HTTP/0.9" false else true end end def call(env) status, headers, body = @app.call(env) headers = HeaderHash.new(headers) if ! chunkable_version?(env['HTTP_VERSION']) || STATUS_WITH_NO_ENTITY_BODY.include?(status) || headers[CONTENT_LENGTH] || headers['Transfer-Encoding'] [status, headers, body] else headers.delete(CONTENT_LENGTH) headers['Transfer-Encoding'] = 'chunked' [status, headers, Body.new(body)] end end end end
Upload File
Create Folder