module AWS::Core::UriEscape

Provides helper methods for URI escaping values and paths.

Public Instance Methods

escape(value) click to toggle source

@param [String] value @return [String] Returns a URI escaped string.

# File lib/aws/core/uri_escape.rb, line 24
def escape value
  value = value.encode("UTF-8") if value.respond_to?(:encode)
  CGI::escape(value.to_s).gsub('+', '%20').gsub('%7E', '~')
end
escape_path(value) click to toggle source

@param [String] value @return [String] Returns a URI-escaped path without escaping the

separators.
# File lib/aws/core/uri_escape.rb, line 32
def escape_path value
  escaped = ""
  value.scan(%r{(/*)([^/]*)(/*)}) do |(leading, part, trailing)|
    escaped << leading + escape(part) + trailing
  end
  escaped
end