uri library

A simple URI parser based on RFC-3986.

The accepted inputs and decomposition matches the example given in Appendix B of the standard: https://tools.ietf.org/html/rfc3986#appendix-B.

For example:

final result = uri.parse('https://example.com/foo?bar=baz#frag');
print(result.value.scheme); // https
print(result.value.hostname); // example.com
print(result.value.path); // /foo
print(result.value.fragment); // frag

Properties

authority → Parser<({String? hostname, String? password, String? port, String? username})>
A parser that decomposes a URI authority into user credentials, host, and port.
final
query → Parser<List<(String, String?)>>
A parser that decomposes a URI query string into a list of key-value pairs.
final
uri → Parser<({String? authority, String? fragment, String? hostname, List<(String, String?)> params, String? password, String path, String? port, String? query, String? scheme, String? username})>
A parser that decomposes an RFC-3986 URI into its constituent components.
final