lib/curl.rb in curb-0.9.5 vs lib/curl.rb in curb-0.9.6
- old
+ new
@@ -4,11 +4,11 @@
require 'uri'
require 'cgi'
# expose shortcut methods
module Curl
-
+
def self.http(verb, url, post_body=nil, put_data=nil, &block)
handle = Thread.current[:curb_curl] ||= Curl::Easy.new
handle.reset
handle.url = url
handle.post_body = post_body if post_body
@@ -46,10 +46,10 @@
http :OPTIONS, urlalize(url, params), nil, nil, &block
end
def self.urlalize(url, params={})
uri = URI(url)
- params_query = params.map {|k,v| "#{URI.escape(k.to_s)}=#{URI.escape(v.to_s)}" }.join("&")
+ params_query = URI.encode_www_form(params || {})
# both uri.query and params_query not blank
if !(uri.query.nil? || uri.query.empty?) && !params_query.empty?
uri.query = "#{uri.query}&#{params_query}"
else
uri.query = "#{uri.query}#{params_query}"