mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
42ad5216ec
* lib/uri/common.rb: Ditto. * lib/uri/ftp.rb: Ditto. * lib/uri/generic.rb: Ditto. * lib/uri/http.rb: Ditto. * lib/uri/https.rb: Ditto. * lib/uri/ldap.rb: Ditto. * lib/uri/mailto.rb: Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
65 lines
1.1 KiB
Ruby
65 lines
1.1 KiB
Ruby
#
|
|
# = uri/http.rb
|
|
#
|
|
# Author:: Akira Yamada <akira@ruby-lang.org>
|
|
# License:: You can redistribute it and/or modify it under the same term as Ruby.
|
|
# Revision:: $Id$
|
|
#
|
|
|
|
require 'uri/generic'
|
|
|
|
module URI
|
|
|
|
#
|
|
# RFC1738 section 3.3.
|
|
#
|
|
class HTTP < Generic
|
|
DEFAULT_PORT = 80
|
|
|
|
COMPONENT = [
|
|
:scheme,
|
|
:userinfo, :host, :port,
|
|
:path,
|
|
:query,
|
|
:fragment
|
|
].freeze
|
|
|
|
#
|
|
# == Description
|
|
#
|
|
# Create a new URI::HTTP object from components of URI::HTTP with
|
|
# check. It is scheme, userinfo, host, port, path, query and
|
|
# fragment. It provided by an Array of a Hash.
|
|
#
|
|
def self.build(args)
|
|
tmp = Util::make_components_hash(self, args)
|
|
return super(tmp)
|
|
end
|
|
|
|
#
|
|
# == Description
|
|
#
|
|
# Create a new URI::HTTP object from ``generic'' components with no
|
|
# check.
|
|
#
|
|
def initialize(*arg)
|
|
super(*arg)
|
|
end
|
|
|
|
#
|
|
# == Description
|
|
#
|
|
# Returns: path + '?' + query
|
|
#
|
|
def request_uri
|
|
r = path_query
|
|
if r[0] != ?/
|
|
r = '/' + r
|
|
end
|
|
|
|
r
|
|
end
|
|
end
|
|
|
|
@@schemes['HTTP'] = HTTP
|
|
end
|