pub enum SameSite {
    Strict,
    Lax,
    None,
}
Available on crate feature cookie only.
Expand description

The SameSite cookie attribute.

A cookie with a SameSite attribute is imposed restrictions on when it is sent to the origin server in a cross-site request. If the SameSite attribute is “Strict”, then the cookie is never sent in cross-site requests. If the SameSite attribute is “Lax”, the cookie is only sent in cross-site requests with “safe” HTTP methods, i.e, GET, HEAD, OPTIONS, TRACE. If the SameSite attribute is “None”, the cookie is sent in all cross-site requests if the “Secure” flag is also set, otherwise the cookie is ignored. This library automatically sets the “Secure” flag on cookies when same_site is set to SameSite::None as long as secure is not explicitly set to false.

If the SameSite attribute is not present (by not setting SameSite initally or passing None to Cookie::set_same_site()), then the cookie will be sent as normal.

Note: This cookie attribute is an HTTP draft! Its meaning and definition are subject to change.

Variants

Strict

The “Strict” SameSite attribute.

Lax

The “Lax” SameSite attribute.

None

The “None” SameSite attribute.

Implementations

Returns true if self is SameSite::Strict and false otherwise.

Example
use cookie::SameSite;

let strict = SameSite::Strict;
assert!(strict.is_strict());
assert!(!strict.is_lax());
assert!(!strict.is_none());

Returns true if self is SameSite::Lax and false otherwise.

Example
use cookie::SameSite;

let lax = SameSite::Lax;
assert!(lax.is_lax());
assert!(!lax.is_strict());
assert!(!lax.is_none());

Returns true if self is SameSite::None and false otherwise.

Example
use cookie::SameSite;

let none = SameSite::None;
assert!(none.is_none());
assert!(!none.is_lax());
assert!(!none.is_strict());

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Compare self to key and return true if they are equal.

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

Converts the given value to a String. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more