mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/webrick/config.rb (WEBrick::Config::General): add default values:
- WEBrick::Config[:DoNotReverseLookup] - WEBrick::Config[:RequestCallback] (it used as an alias of :RequestHandler in WEBrick::HTTPServer#run) - WEBrick::Config::FileHandler[:AcceptableLanguages] * lib/webrick/httpservlet/filehandler.rb (WEBrick::HTTPServlet::FileHandler#set_filename): search files having suffix of language-name which Accept-Language header field includes if :AcceptableLanguages options is present. * lib/webrick/httpservlet/filehandler.rb (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to search servlet correspond to the suffix of filename. * lib/webrick/httprequest.rb: add attributes access methods: accept, accept_charset, accept_encoding, accept_language, content_length and content_type. * lib/webrick/httpresponse.rb: add attribute access methods: content_length, content_length=, content_type and content_type=. * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types): use the second suffix to detect media type. (the first suffix may be a language name.) * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues): add method to parse Accept header field. it returns an Array of values sorted by the qvalues. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
f93f318f77
commit
a79c87e333
6 changed files with 175 additions and 34 deletions
|
@ -63,6 +63,24 @@ module WEBrick
|
|||
@header[field.downcase] = value.to_s
|
||||
end
|
||||
|
||||
def content_length
|
||||
if len = self['content-length']
|
||||
return Integer(len)
|
||||
end
|
||||
end
|
||||
|
||||
def content_length=(len)
|
||||
self['content-length'] = len.to_s
|
||||
end
|
||||
|
||||
def content_type
|
||||
self['content-type']
|
||||
end
|
||||
|
||||
def content_type=(type)
|
||||
self['content-type'] = type
|
||||
end
|
||||
|
||||
def each
|
||||
@header.each{|k, v| yield(k, v) }
|
||||
end
|
||||
|
@ -250,7 +268,7 @@ module WEBrick
|
|||
_write_data(socket, "0#{CRLF}#{CRLF}")
|
||||
else
|
||||
size = @header['content-length'].to_i
|
||||
_send_file(socket, @body, 0, size.to_i)
|
||||
_send_file(socket, @body, 0, size)
|
||||
@sent_size = size
|
||||
end
|
||||
@body.close
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue