Stores multipart form data. FormData objects are created when WEBrick::HTTPUtils.parse_form_data is called.
Methods
Constants
EmptyRawHeader | = | [].freeze |
EmptyHeader | = | {}.freeze |
Attributes
[RW] | filename | The filename of the form data part |
[RW] | name | The name of the form data part |
Class Public methods
new(*args)
Link
Creates a new FormData object.
args
is an Array of form data entries. One FormData will be created for each entry.
This is called by WEBrick::HTTPUtils.parse_form_data for you
# File lib/webrick/httputils.rb, line 264 def initialize(*args) @name = @filename = @next_data = nil if args.empty? @raw_header = [] @header = nil super("") else @raw_header = EmptyRawHeader @header = EmptyHeader super(args.shift) unless args.empty? @next_data = self.class.new(*args) end end end
Instance Public methods
<<(str)
Link
Adds str
to this FormData which
may be the body, a header or a header entry.
This is called by WEBrick::HTTPUtils.parse_form_data for you
# File lib/webrick/httputils.rb, line 297 def <<(str) if @header super elsif str == CRLF @header = HTTPUtils::parse_header(@raw_header.join) if cd = self['content-disposition'] if /\s+name="(.*?)"/ =~ cd then @name = $1 end if /\s+filename="(.*?)"/ =~ cd then @filename = $1 end end else @raw_header << str end self end
[](*key)
Link
Retrieves the header at the first entry in key
append_data(data)
Link
Adds data
at the end of the chain of entries
This is called by WEBrick::HTTPUtils.parse_form_data for you.