pub struct Cookie(/* private fields */);
Expand description
Cookie
header, defined in RFC6265
If the user agent does attach a Cookie header field to an HTTP request, the user agent must send the cookie-string as the value of the header field.
When the user agent generates an HTTP request, the user agent MUST NOT attach more than one Cookie header field.
§Example values
SID=31d4d96e407aad42
SID=31d4d96e407aad42; lang=en-US
§Example
use hyper::header::{Headers, Cookie};
let mut headers = Headers::new();
let mut cookie = Cookie::new();
cookie.append("foo", "bar");
assert_eq!(cookie.get("foo"), Some("bar"));
headers.set(cookie);
Implementations§
Source§impl Cookie
impl Cookie
Sourcepub fn set<K, V>(&mut self, key: K, value: V)
pub fn set<K, V>(&mut self, key: K, value: V)
Sets a name and value for the Cookie
.
§Note
This will remove all other instances with the same name, and insert the new value.
Sourcepub fn append<K, V>(&mut self, key: K, value: V)
pub fn append<K, V>(&mut self, key: K, value: V)
Append a name and value for the Cookie
.
§Note
Cookies are allowed to set a name with a a value multiple times. For example:
use hyper::header::Cookie;
let mut cookie = Cookie::new();
cookie.append("foo", "bar");
cookie.append("foo", "quux");
assert_eq!(cookie.to_string(), "foo=bar; foo=quux");
Sourcepub fn get(&self, key: &str) -> Option<&str>
pub fn get(&self, key: &str) -> Option<&str>
Get a value for the name, if it exists.
§Note
Only returns the first instance found. To access
any other values associated with the name, parse
the str
representation.
Sourcepub fn iter(&self) -> CookieIter<'_> ⓘ
pub fn iter(&self) -> CookieIter<'_> ⓘ
Iterate cookies.
Iterate cookie (key, value) in insertion order.
use hyper::header::Cookie;
let mut cookie = Cookie::new();
cookie.append("foo", "bar");
cookie.append(String::from("dyn"), String::from("amic"));
let mut keys = Vec::new();
let mut values = Vec::new();
for (k, v) in cookie.iter() {
keys.push(k);
values.push(v);
}
assert_eq!(keys, vec!["foo", "dyn"]);
assert_eq!(values, vec!["bar", "amic"]);
Trait Implementations§
Source§impl Header for Cookie
impl Header for Cookie
Auto Trait Implementations§
impl Freeze for Cookie
impl RefUnwindSafe for Cookie
impl Send for Cookie
impl Sync for Cookie
impl Unpin for Cookie
impl UnwindSafe for Cookie
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)