Module: Net::HTTPHeader
- Defined in:
- lib/nakamura.rb
Overview
Fix array handling
Instance Method Summary collapse
- #encode_kvpair(k, vs) ⇒ Object
- #initialize_http_header(initheader) ⇒ Object
- #set_form_data(params, sep = '&') ⇒ Object
Instance Method Details
#encode_kvpair(k, vs) ⇒ Object
54 55 56 57 58 59 60 |
# File 'lib/nakamura.rb', line 54 def encode_kvpair(k, vs) if vs.nil? or vs == '' then "#{CGI::escape(k)}=" else Array(vs).map {|v| "#{CGI::escape(k)}=#{CGI::escape(v.to_s)}" } end end |
#initialize_http_header(initheader) ⇒ Object
45 46 47 48 49 50 51 52 |
# File 'lib/nakamura.rb', line 45 def initialize_http_header(initheader) @header = { "Referer" => ["/dev/integrationtests"] } return unless initheader initheader.each do |key, value| warn "net/http: warning: duplicated HTTP header: #{key}" if key?(key) and $VERBOSE @header[key.downcase] = [value.strip] end end |
#set_form_data(params, sep = '&') ⇒ Object
39 40 41 42 |
# File 'lib/nakamura.rb', line 39 def set_form_data(params, sep = '&') self.body = params.map {|k, v| encode_kvpair(k, v) }.flatten.join(sep) self.content_type = 'application/x-www-form-urlencoded' end |