The HTTP module contains HTTP::Client, HTTP::Server and HTTP::WebSocket implementations.
16384 Default maximum permitted combined size (in bytes) of the headers in an HTTP request.
8192 Default maximum permitted size (in bytes) of the request line in an HTTP request.
{"HTTP/1.0", "HTTP/1.1"} Dequotes an RFC 2616 quoted-string.
Parse a time string using the formats specified by RFC 2616
Encodes a string to an RFC 2616 quoted-string.
Encodes a string to an RFC 2616 quoted-string.
Dequotes an RFC 2616 quoted-string.
require "http"
quoted = %q(\"foo\\bar\")
HTTP.dequote_string(quoted) # => %q("foo\bar") Format a Time object as a String using the format specified as sane-cookie-date by RFC 6265 which is according to RFC 2616 a RFC 1123 format with explicit timezone GMT (interpreted as UTC).
require "http" HTTP.format_time(Time.utc(2016, 2, 15)) # => "Mon, 15 Feb 2016 00:00:00 GMT"
Uses Time::Format::HTTP_DATE as formatter.
Parse a time string using the formats specified by RFC 2616
require "http"
HTTP.parse_time("Sun, 14 Feb 2016 21:00:00 GMT") # => "2016-02-14 21:00:00 UTC"
HTTP.parse_time("Sunday, 14-Feb-16 21:00:00 GMT") # => "2016-02-14 21:00:00 UTC"
HTTP.parse_time("Sun Feb 14 21:00:00 2016") # => "2016-02-14 21:00:00 UTC" Uses Time::Format::HTTP_DATE as parser.
Encodes a string to an RFC 2616 quoted-string. Encoded string is written to io. May raise when string contains an invalid character.
require "http"
string = %q("foo\ bar")
io = IO::Memory.new
HTTP.quote_string(string, io)
io.rewind
io.gets_to_end # => %q(\"foo\\\ bar\") Encodes a string to an RFC 2616 quoted-string. May raise when string contains an invalid character.
require "http"
string = %q("foo\ bar")
HTTP.quote_string(string) # => %q(\"foo\\\ bar\")
© 2012–2020 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/0.35.1/HTTP.html