Module: Net::HTTPHeader

Defined in:
lib/nakamura.rb

Overview

Fix array handling

Instance Method Summary collapse

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