decode(HexEncodedURI)->URI
Types:
HexEncodedURI = string() | binary() - A possibly hexadecimal encoded URI
URI = uri()
Decodes a possibly hexadecimal encoded URI.
encode(URI)->HexEncodedURI
Types:
URI = uri()
HexEncodedURI = string() | binary() - Hexadecimal encoded URI
Encodes a hexadecimal encoded URI.
parse(URI)->{ok,Result}|{error,Reason}parse(URI,Options)->{ok,Result}|{error,Reason}
Types:
URI = uri()
Options = [Option]
Option = {ipv6_host_with_brackets, boolean()} | {scheme_defaults, scheme_defaults()} |
{fragment, boolean()} | {scheme_validation_fun, fun()}
Result = {Scheme, UserInfo, Host, Port, Path, Query} | {Scheme, UserInfo, Host, Port, Path,
Query, Fragment}
Scheme = scheme()
UserInfo = user_info()
Host = host()
Port = inet:port_number()
Path = path()
Query = query()
Fragment = fragment()
Reason = term()
Parses a URI. If no scheme defaults are provided, the value of the scheme_defaults function is
used.
When parsing a URI with an unknown scheme (that is, a scheme not found in the scheme defaults), a
port number must be provided, otherwise the parsing fails.
If the fragment option is true, the URI fragment is returned as part of the parsing result,
otherwise it is ignored.
Scheme validation fun is to be defined as follows:
fun(SchemeStr :: string() | binary()) ->
valid | {error, Reason :: term()}.
It is called before scheme string gets converted into scheme atom and thus possible atom leak
could be prevented
Warning:
The scheme portion of the URI gets converted into atom, meaning that atom leak may occur.
Specifying a scheme validation fun is recommended unless the URI is already sanitized.
scheme_defaults()->SchemeDefaults
Types:
SchemeDefaults = [{scheme(), default_scheme_port_number()}]
default_scheme_port_number() = inet:port_number()
Provides a list of the scheme and their default port numbers supported (by default) by this
utility.
Ericsson AB inets 7.5 http_uri(3erl)