pub struct Parts {
pub scheme: Option<Scheme>,
pub authority: Option<Authority>,
pub path_and_query: Option<PathAndQuery>,
/* private fields */
}
Expand description
The various parts of a URI.
This struct is used to provide to and retrieve from a URI.
Fields§
§scheme: Option<Scheme>
The scheme component of a URI
The authority component of a URI
path_and_query: Option<PathAndQuery>
The origin-form component of a URI
Trait Implementations§
source§impl From<Uri> for Parts
impl From<Uri> for Parts
Convert a Uri
from parts
Examples
Relative URI
let mut parts = Parts::default();
parts.path_and_query = Some("/foo".parse().unwrap());
let uri = Uri::from_parts(parts).unwrap();
assert_eq!(uri.path(), "/foo");
assert!(uri.scheme_part().is_none());
assert!(uri.authority().is_none());
Absolute URI
let mut parts = Parts::default();
parts.scheme = Some("http".parse().unwrap());
parts.authority = Some("foo.com".parse().unwrap());
parts.path_and_query = Some("/foo".parse().unwrap());
let uri = Uri::from_parts(parts).unwrap();
assert_eq!(uri.scheme_part().unwrap().as_str(), "http");
assert_eq!(uri.authority().unwrap(), "foo.com");
assert_eq!(uri.path(), "/foo");
source§impl HttpTryFrom<Parts> for Uri
impl HttpTryFrom<Parts> for Uri
§type Error = InvalidUriParts
type Error = InvalidUriParts
Associated error with the conversion this implementation represents.