class HTTP::Request
Overview
An HTTP request.
It serves both to perform requests by an HTTP::Client
and to
represent requests received by an HTTP::Server
.
A request always holds an IO
as a body.
When creating a request with a String
or Bytes
its body
will be a IO::Memory
wrapping these, and the Content-Length
header will be set appropriately.
Defined in:
http/request.crClass Method Summary
-
.from_io(io)
Returns a
HTTP::Request
instance if successfully parsed, returnsnil
on EOF, or returnsBadRequest
. - .new(method : String, resource : String, headers : Headers? = nil, body : String | Bytes | IO | Nil = nil, version = "HTTP/1.1")
Instance Method Summary
- #body : IO?
- #body=(body : Nil)
- #body=(body : IO)
- #body=(body : Bytes)
- #body=(body : String)
- #content_length
- #content_length=(length : Int)
-
#cookies
Returns a convenience wrapper around querying and setting cookie related headers, see
HTTP::Cookies
. - #headers : Headers
- #headers=(headers : Headers)
-
#host
Return request host from headers.
-
#host_with_port
Return request host with port from headers.
- #ignore_body?
- #keep_alive?
- #method : String
- #method=(method : String)
-
#path
Lazily parses and return the request's path component.
-
#path=(path)
Sets request's path component.
-
#query
Lazily parses and returns the request's query component.
-
#query=(value)
Sets request's query component.
-
#query_params
Returns a convenience wrapper around querying and setting query params, see
HTTP::Params
. - #resource
- #to_io(io)
- #version : String
- #version=(version : String)
Instance methods inherited from class Reference
==(other : self)==(other) ==, dup dup, hash hash, inspect(io : IO) : Nil inspect, object_id : UInt64 object_id, pretty_print(pp) : Nil pretty_print, same?(other : Reference)
same?(other : Nil) same?, to_s(io : IO) : Nil to_s
Class methods inherited from class Reference
new
new
Instance methods inherited from class Object
!=(other)
!=,
!~(other)
!~,
==(other)
==,
===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, class class, dup dup, hash hash, inspect(io : IO)
inspect inspect, itself itself, not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, tap(&block) tap, to_json(io : IO)
to_json to_json, to_pretty_json(indent : String = " ")
to_pretty_json(io : IO, indent : String = " ") to_pretty_json, to_s
to_s(io : IO) to_s, to_yaml(io : IO)
to_yaml to_yaml, try(&block) try
Class methods inherited from class Object
from_json(string_or_io, root : String) : selffrom_json(string_or_io) : self from_json, from_yaml(string_or_io) : self from_yaml
Class Method Detail
Returns a HTTP::Request
instance if successfully parsed, returns nil
on EOF, or returns BadRequest
.
Instance Method Detail
Returns a convenience wrapper around querying and setting cookie related
headers, see HTTP::Cookies
.
Returns a convenience wrapper around querying and setting query params,
see HTTP::Params
.