pub struct Host;
Expand description
See Prefix
and PrefixedJar
for usage details.
Trait Implementations§
source§impl Prefix for Host
impl Prefix for Host
source§const PREFIX: &'static str = "__Host-"
const PREFIX: &'static str = "__Host-"
The "__Host-"
prefix string.
source§fn conform(cookie: Cookie<'_>) -> Cookie<'_>
fn conform(cookie: Cookie<'_>) -> Cookie<'_>
Modify cookie
so it conforms to the prefix’s requirements.
Note: this method is called automatically by PrefixedJar
. It does
not need to and should not be called manually under normal
circumstances.
According to RFC 6265bis-12 §4.1.3.2:
If a cookie's name begins with a case-sensitive match for the string
__Host-, then the cookie will have been set with a Secure attribute,
a Path attribute with a value of /, and no Domain attribute.
As such, to make a cookie conforn, this method:
§Example
use cookie::{CookieJar, Cookie, prefix::Host};
// A cookie with some non-conformant properties.
let cookie = Cookie::build(("name", "some-value"))
.secure(false)
.path("/foo/bar")
.domain("rocket.rs")
.http_only(true);
// Add the cookie to the jar.
let mut jar = CookieJar::new();
jar.prefixed_mut(Host).add(cookie);
// Fetch the cookie: notice it's been made to conform.
let cookie = jar.prefixed(Host).get("name").unwrap();
assert_eq!(cookie.name(), "name");
assert_eq!(cookie.value(), "some-value");
assert_eq!(cookie.secure(), Some(true));
assert_eq!(cookie.path(), Some("/"));
assert_eq!(cookie.domain(), None);
assert_eq!(cookie.http_only(), Some(true));
impl Sealed for Host
Auto Trait Implementations§
impl Freeze for Host
impl RefUnwindSafe for Host
impl Send for Host
impl Sync for Host
impl Unpin for Host
impl UnwindSafe for Host
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more