def add_field(key, val)
      if @header.key?(key.downcase)
        @header[key.downcase].push val
      else
        @header[key.downcase] = [val]
      end
    end
def add_field(key, val)
      if @header.key?(key.downcase)
        @header[key.downcase].push val
      else
        @header[key.downcase] = [val]
      end
    end
[Ruby 1.8.3]
 Adds header field instead of replace.
 Second argument +val+ must be a String.
 See also #[]=, #[] and #get_fields.

   request.add_field 'X-My-Header', 'a'
   p request['X-My-Header']              #=> "a"
   p request.get_fields('X-My-Header')   #=> ["a"]
   request.add_field 'X-My-Header', 'b'
   p request['X-My-Header']              #=> "a, b"
   p request.get_fields('X-My-Header')   #=> ["a", "b"]
   request.add_field 'X-My-Header', 'c'
   p request['X-My-Header']              #=> "a, b, c"
   p request.get_fields('X-My-Header')   #=> ["a", "b", "c"]