Module: Protocol::HTTP1

Defined in:
lib/protocol/http1/error.rb,
lib/protocol/http1/reason.rb,
lib/protocol/http1/version.rb,
lib/protocol/http1/body/fixed.rb,
lib/protocol/http1/connection.rb,
lib/protocol/http1/body/chunked.rb,
lib/protocol/http1/body/remainder.rb

Defined Under Namespace

Modules: Body, Reason Classes: BadHeader, BadRequest, BadResponse, Connection, ContentLengthError, Error, InvalidRequest

Constant Summary collapse

VERSION =
"0.15.0"
CONTENT_LENGTH =
'content-length'
TRANSFER_ENCODING =
'transfer-encoding'
CHUNKED =
'chunked'
CONNECTION =
'connection'
CLOSE =
'close'
KEEP_ALIVE =
'keep-alive'
HOST =
'host'
UPGRADE =
'upgrade'
TOKEN =

HTTP/1.x request line parser:

/[!#$%&'*+\-\.\^_`|~0-9a-zA-Z]+/.freeze
REQUEST_LINE =
/\A(#{TOKEN}) ([^\s]+) (HTTP\/\d.\d)\z/.freeze
FIELD_NAME =

HTTP/1.x header parser:

TOKEN
FIELD_VALUE =
/[^\000-\037]*/.freeze
HEADER =
/\A(#{FIELD_NAME}):\s*(#{FIELD_VALUE})\s*\z/.freeze
VALID_FIELD_NAME =
/\A#{FIELD_NAME}\z/.freeze
VALID_FIELD_VALUE =
/\A#{FIELD_VALUE}\z/.freeze