12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'lib/curb-fu/request/common.rb', line 12
def build_url(url_params, query_params = {})
if url_params.is_a? String
built_url = url_params
elsif url_params[:url]
built_url = url_params[:url]
else
protocol = url_params[:protocol] || "http"
built_url = "#{protocol}://#{url_params[:host]}"
built_url += ":" + url_params[:port].to_s if url_params[:port]
built_url += url_params[:path] if url_params[:path]
end
if query_params.is_a? String
built_url += query_params
elsif !query_params.empty?
built_url += "?"
built_url += query_params.collect do |name, value|
CurbFu::Request::Parameter.new(name, value).to_uri_param
end.join('&')
end
built_url
end
|