Struct actix_web::middleware::CookieSessionBackend
[−]
[src]
pub struct CookieSessionBackend(_);
Use cookies for session storage.
CookieSessionBackend
creates sessions which are limited to storing
fewer than 4000 bytes of data (as the payload must fit into a single cookie).
An Internal Server Error is generated if the session contains more than 4000 bytes.
A cookie may have a security policy of signed or private. Each has a respective CookieSessionBackend
constructor.
A signed cookie is stored on the client as plaintext alongside a signature such that the cookie may be viewed but not modified by the client.
A private cookie is stored on the client as encrypted text such that it may neither be viewed nor modified by the client.
The constructors take a key as an argument. This is the private key for cookie session - when this value is changed, all session data is lost. The constructors will panic if the key is less than 32 bytes in length.
Example
use actix_web::middleware::CookieSessionBackend; let backend: CookieSessionBackend = CookieSessionBackend::signed(&[0; 32]) .domain("www.rust-lang.org") .name("actix_session") .path("/") .secure(true);
Methods
impl CookieSessionBackend
[src]
pub fn signed(key: &[u8]) -> CookieSessionBackend
[src]
Construct new signed CookieSessionBackend
instance.
Panics if key length is less than 32 bytes.
pub fn private(key: &[u8]) -> CookieSessionBackend
[src]
Construct new private CookieSessionBackend
instance.
Panics if key length is less than 32 bytes.
pub fn path<S: Into<String>>(self, value: S) -> CookieSessionBackend
[src]
Sets the path
field in the session cookie being built.
pub fn name<S: Into<String>>(self, value: S) -> CookieSessionBackend
[src]
Sets the name
field in the session cookie being built.
pub fn domain<S: Into<String>>(self, value: S) -> CookieSessionBackend
[src]
Sets the domain
field in the session cookie being built.
pub fn secure(self, value: bool) -> CookieSessionBackend
[src]
Sets the secure
field in the session cookie being built.
If the secure
field is set, a cookie will only be transmitted when the
connection is secure - i.e. https
pub fn max_age(self, value: Duration) -> CookieSessionBackend
[src]
Sets the max-age
field in the session cookie being built.