module StringTools::Uri

Public Instance Methods

add_params_to_url(url, params = nil, options = {normalize: true}) click to toggle source
# File lib/string_tools.rb, line 241
def add_params_to_url(url, params = nil, options = {normalize: true})
  uri = Addressable::URI.parse(url)
  uri = Addressable::URI.parse("http://#{url}") unless uri.scheme
  uri.query_values = (uri.query_values || {}).merge!(params.stringify_keys) if params.present?

  uri.normalize! if options[:normalize]

  uri.to_s
rescue Addressable::URI::InvalidURIError
  nil
end