class Miniserver::Request

Attributes

body[RW]
headers[RW]
http_method[R]
keep_alive[R]
query_string[R]
remote_addr[R]
request_path[R]
request_url[R]
server_name[R]
server_port[R]

Public Class Methods

new() click to toggle source
# File lib/miniserver/request.rb, line 14
def initialize
  @body = String.new
  @headers = Hash.new
end

Public Instance Methods

parse_header(parser, socket) click to toggle source
# File lib/miniserver/request.rb, line 19
def parse_header(parser, socket)
  @request_url  = parser.request_url
  @query_string = parser.query_string
  @request_path = parser.request_path
  @http_method  = parser.http_method
  @keep_alive   = parser.keep_alive?
  @remote_addr  = Socket.unpack_sockaddr_in(socket.get_peername)[1]
  @server_name, @server_port = @headers[HOST].split(COLON)
  @server_port ||= PORT_80
end