pub struct Cookie(_);
cookie
only.Expand description
Implementations
sourceimpl Cookie
impl Cookie
sourcepub fn new(name: impl Into<String>, value: impl Serialize) -> Self
pub fn new(name: impl Into<String>, value: impl Serialize) -> Self
Creates a new Cookie with the given name
and serialized value
.
sourcepub fn new_with_str(name: impl Into<String>, value: impl Into<String>) -> Self
pub fn new_with_str(name: impl Into<String>, value: impl Into<String>) -> Self
Creates a new Cookie with the given name
and value
.
sourcepub fn named(name: impl Into<String>) -> Self
pub fn named(name: impl Into<String>) -> Self
Creates a new Cookie
with the given name and an empty value.
Example
use poem::web::cookie::Cookie;
let cookie = Cookie::named("foo");
assert_eq!(cookie.name(), "foo");
assert!(cookie.value_str().is_empty());
sourcepub fn parse(s: impl AsRef<str>) -> Result<Self, ParseCookieError>
pub fn parse(s: impl AsRef<str>) -> Result<Self, ParseCookieError>
Parses a Cookie from the given HTTP cookie header value string.
sourcepub fn domain(&self) -> Option<&str>
pub fn domain(&self) -> Option<&str>
Returns the Domain of the cookie if one was specified.
Example
use poem::web::cookie::Cookie;
let cookie = Cookie::parse("foo=bar; domain=example.com").unwrap();
assert_eq!(cookie.domain(), Some("example.com"));
sourcepub fn expires(&self) -> Option<DateTime<Utc>>
pub fn expires(&self) -> Option<DateTime<Utc>>
Returns the expiration date-time of the cookie if one was specified.
sourcepub fn http_only(&self) -> bool
pub fn http_only(&self) -> bool
Returns whether this cookie was marked HttpOnly
or not.
Example
use poem::web::cookie::Cookie;
let cookie = Cookie::parse("foo=bar; HttpOnly").unwrap();
assert!(cookie.http_only());
sourcepub fn make_permanent(&mut self)
pub fn make_permanent(&mut self)
Makes self
a permanent
cookie by extending its expiration and max
age 20 years into the future.
Example
use std::time::Duration;
use poem::web::cookie::Cookie;
let mut cookie = Cookie::new_with_str("foo", "bar");
cookie.make_permanent();
assert_eq!(
cookie.max_age(),
Some(Duration::from_secs(60 * 60 * 24 * 365 * 20))
);
sourcepub fn make_removal(&mut self)
pub fn make_removal(&mut self)
Make self
a removal
cookie by clearing its value, setting a max-age
of 0, and setting an expiration date far in the past.
Example
use std::time::Duration;
use poem::web::cookie::Cookie;
let mut cookie = Cookie::new_with_str("foo", "bar");
cookie.make_removal();
assert_eq!(cookie.max_age(), Some(Duration::from_secs(0)));
sourcepub fn max_age(&self) -> Option<Duration>
pub fn max_age(&self) -> Option<Duration>
Returns the specified max-age of the cookie if one was specified.
Example
use std::time::Duration;
use poem::web::cookie::Cookie;
let cookie = Cookie::parse("foo=bar; Max-Age=3600").unwrap();
assert_eq!(cookie.max_age(), Some(Duration::from_secs(3600)));
sourcepub fn name(&self) -> &str
pub fn name(&self) -> &str
Returns the name of self
.
Example
use poem::web::cookie::Cookie;
let cookie = Cookie::parse("foo=bar").unwrap();
assert_eq!(cookie.name(), "foo");
sourcepub fn path(&self) -> Option<&str>
pub fn path(&self) -> Option<&str>
Returns the Path
of the cookie if one was specified.
Example
use poem::web::cookie::Cookie;
let cookie = Cookie::parse("foo=bar; path=/api").unwrap();
assert_eq!(cookie.path(), Some("/api"));
sourcepub fn same_site(&self) -> Option<SameSite>
pub fn same_site(&self) -> Option<SameSite>
Returns the SameSite
attribute of this cookie if one was specified.
Example
use poem::web::cookie::{Cookie, SameSite};
let cookie = Cookie::parse("foo=bar; SameSite=Strict").unwrap();
assert_eq!(cookie.same_site(), Some(SameSite::Strict));
sourcepub fn secure(&self) -> bool
pub fn secure(&self) -> bool
Returns whether this cookie was marked Secure
or not.
Example
use poem::web::cookie::Cookie;
let cookie = Cookie::parse("foo=bar; Secure").unwrap();
assert!(cookie.secure());
sourcepub fn set_domain(&mut self, domain: impl Into<String>)
pub fn set_domain(&mut self, domain: impl Into<String>)
Sets the domain
of self
to domain
.
sourcepub fn set_expires(&mut self, time: DateTime<impl TimeZone>)
pub fn set_expires(&mut self, time: DateTime<impl TimeZone>)
Sets the expires field of self
to time
.
sourcepub fn set_http_only(&mut self, value: impl Into<Option<bool>>)
pub fn set_http_only(&mut self, value: impl Into<Option<bool>>)
Sets the value of HttpOnly
in self
to value
.
sourcepub fn set_max_age(&mut self, value: Duration)
pub fn set_max_age(&mut self, value: Duration)
Sets the value of MaxAge
in self
to value
.
sourcepub fn set_same_site(&mut self, value: impl Into<Option<SameSite>>)
pub fn set_same_site(&mut self, value: impl Into<Option<SameSite>>)
Sets the value of SameSite
in self
to value
.
sourcepub fn set_secure(&mut self, value: impl Into<Option<bool>>)
pub fn set_secure(&mut self, value: impl Into<Option<bool>>)
Sets the value of Secure
in self
to value
.
sourcepub fn set_value_str(&mut self, value: impl Into<String>)
pub fn set_value_str(&mut self, value: impl Into<String>)
Sets the value of self
to value
.
sourcepub fn set_value(&mut self, value: impl Serialize)
pub fn set_value(&mut self, value: impl Serialize)
Sets the value of self
to the serialized value
.
sourcepub fn value<'de, T: Deserialize<'de>>(&'de self) -> Result<T, ParseCookieError>
pub fn value<'de, T: Deserialize<'de>>(&'de self) -> Result<T, ParseCookieError>
Returns the value of self
to the deserialized value
.
Trait Implementations
sourceimpl<'a> FromRequest<'a> for Cookie
impl<'a> FromRequest<'a> for Cookie
sourcefn from_request<'life0, 'async_trait>(
req: &'a Request,
_body: &'life0 mut RequestBody
) -> Pin<Box<dyn Future<Output = Result<Self>> + Send + 'async_trait>> where
'a: 'async_trait,
'life0: 'async_trait,
Self: 'async_trait,
fn from_request<'life0, 'async_trait>(
req: &'a Request,
_body: &'life0 mut RequestBody
) -> Pin<Box<dyn Future<Output = Result<Self>> + Send + 'async_trait>> where
'a: 'async_trait,
'life0: 'async_trait,
Self: 'async_trait,
Extract from request head and body.
impl StructuralPartialEq for Cookie
Auto Trait Implementations
impl RefUnwindSafe for Cookie
impl Send for Cookie
impl Sync for Cookie
impl Unpin for Cookie
impl UnwindSafe for Cookie
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> FutureExt for T
impl<T> FutureExt for T
sourcefn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
sourcefn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more