class
Uri

A parsed URI, such as a URL.

See also:

Static Properties

Uri base
read-only
Returns the natural base URI for the current platform.

Static Methods

parse(String uri, [int start = 0, int end]) → Uri
Creates a new Uri object by parsing a URI string.
encodeComponent(String component) → String
Encode the string component using percent-encoding to make it safe for literal use as a URI component.
encodeQueryComponent(String component, {Encoding encoding: UTF8}) → String
Encode the string component according to the HTML 4.01 rules for encoding the posting of a HTML form as a query string component.
decodeComponent(String encodedComponent) → String
Decodes the percent-encoding in encodedComponent.
decodeQueryComponent(String encodedComponent, {Encoding encoding: UTF8}) → String
Decodes the percent-encoding in encodedComponent, converting pluses to spaces.
encodeFull(String uri) → String
Encode the string uri using percent-encoding to make it safe for literal use as a full URI.
decodeFull(String uri) → String
Decodes the percent-encoding in uri.
splitQueryString(String query, {Encoding encoding: UTF8}) → Map<String,String>
Returns the query split into a map according to the rules specified for FORM post in the HTML 4.01 specification section 17.13.4. Each key and value in the returned map has been decoded. If the query is the empty string an empty map is returned.
parseIPv4Address(String host) → List<int>
Parse the host as an IP version 4 (IPv4) address, returning the address as a list of 4 bytes in network byte order (big endian).
parseIPv6Address(String host, [int start = 0, int end]) → List<int>
Parse the host as an IP version 6 (IPv6) address, returning the address as a list of 16 bytes in network byte order (big endian).

Properties

String scheme
read-only
Returns the scheme component.
String authority
read-only
Returns the authority component.
String userInfo
read-only
Returns the user info part of the authority component.
String host
read-only
Returns the host part of the authority component.
int port
read-only
Returns the port part of the authority component.
String path
read-only
Returns the path component.
String query
read-only
Returns the query component. The returned query is encoded. To get direct access to the decoded query use [queryParameters].
String fragment
read-only
Returns the fragment identifier component.
List<String> pathSegments
read-only
Returns the URI path split into its segments. Each of the segments in the returned list have been decoded. If the path is empty the empty list will be returned. A leading slash / does not affect the segments returned.
Map<String,String> queryParameters
read-only
Returns the URI query split into a map according to the rules specified for FORM post in the HTML 4.01 specification section 17.13.4. Each key and value in the returned map has been decoded. If there is no query the empty map is returned.
bool isAbsolute
read-only
Returns whether the URI is absolute.
bool hasScheme
read-only
Returns whether the URI has a [scheme] component.
bool hasAuthority
read-only
Returns whether the URI has an [authority] component.
bool hasPort
read-only
Returns whether the URI has an explicit port.
bool hasQuery
read-only
Returns whether the URI has a query part.
bool hasFragment
read-only
Returns whether the URI has a fragment part.
bool hasEmptyPath
read-only
Returns whether the URI has an empty path.
bool hasAbsolutePath
read-only
Returns whether the URI has an absolute path (starting with '/').
String origin
read-only
Returns the origin of the URI in the form scheme://host:port for the schemes http and https.
int hashCode
read-only

Constructors

Uri({String scheme: "", String userInfo: "", String host, int port, String path, Iterable<String> pathSegments, String query, Map<String,String> queryParameters, String fragment})
Creates a new URI from its components.
Uri.http(String authority, String unencodedPath, [Map<String,String> queryParameters])
Creates a new http URI from authority, path and query.
Uri.https(String authority, String unencodedPath, [Map<String,String> queryParameters])
Creates a new https URI from authority, path and query.
Uri.file(String path, {bool windows})
Creates a new file URI from an absolute or relative file path.
Uri.directory(String path, {bool windows})
Like Uri.file except that a non-empty URI path ends in a slash.

Operators

operator ==(other) → bool
The equality operator.

Methods

replace({String scheme, String userInfo, String host, int port, String path, Iterable<String> pathSegments, String query, Map<String,String> queryParameters, String fragment}) → Uri
Returns a new Uri based on this one, but with some parts replaced.
normalizePath() → Uri
Returns a URI where the path has been normalized.
resolve(String reference) → Uri
Resolve reference as an URI relative to this.
resolveUri(Uri reference) → Uri
Resolve reference as an URI relative to this.
toFilePath({bool windows}) → String
Returns the file path from a file URI.
toString() → String
Returns a string representation of this object.