method
parse_uri
v1_8_7_72 -
Show latest stable
- Class:
WEBrick::HTTPRequest
parse_uri(str, scheme="http")private
No documentation available.
# File lib/webrick/httprequest.rb, line 252
def parse_uri(str, scheme="http")
if @config[:Escape8bitURI]
str = HTTPUtils::escape8bit(str)
end
uri = URI::parse(str)
return uri if uri.absolute?
if self["host"]
pattern = /\A(#{URI::REGEXP::PATTERN::HOST})(?::(\d+))?\z/n
host, port = *self['host'].scan(pattern)[0]
elsif @addr.size > 0
host, port = @addr[2], @addr[1]
else
host, port = @config[:ServerName], @config[:Port]
end
uri.scheme = scheme
uri.host = host
uri.port = port ? port.to_i : nil
return URI::parse(uri.to_s)
end