Skip to main content

TokenStore

Trait TokenStore 

Source
pub trait TokenStore: Send + Sync {
    // Required methods
    fn read<'a>(&'a self, cx: &'a Cx) -> TokenStoreFuture<'a, Option<Token>>;
    fn write<'a>(
        &'a self,
        cx: &'a Cx,
        token: Token,
        max_age: Duration,
    ) -> TokenStoreFuture<'a, ()>;
    fn delete<'a>(&'a self, cx: &'a Cx) -> TokenStoreFuture<'a, ()>;
}
Expand description

The client-side transport for the session token.

A token store moves the raw Token between the client and the server; it is not the session database, which the application owns. The default CookieTokenStore carries the token in a hardened cookie; implement this trait to carry it elsewhere, such as an Authorization header.

Required Methods§

Source

fn read<'a>(&'a self, cx: &'a Cx) -> TokenStoreFuture<'a, Option<Token>>

Reads the token presented by the current request, or None when the request carries none (or a malformed one).

Source

fn write<'a>( &'a self, cx: &'a Cx, token: Token, max_age: Duration, ) -> TokenStoreFuture<'a, ()>

Issues token to the client with the given time to live, replacing any previously issued token.

Source

fn delete<'a>(&'a self, cx: &'a Cx) -> TokenStoreFuture<'a, ()>

Instructs the client to discard its token.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§