1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//! Authentication middleware for Axum
use ;
use Arc;
use crate::;
/// Authentication middleware
///
/// Validates session token from cookie or Authorization header.
///
/// ## Example
///
/// ```rust,ignore
/// use axum::{Router, middleware};
/// use lmrc_auth::middleware::auth_middleware;
///
/// let protected = Router::new()
/// .route("/protected", get(handler))
/// .layer(middleware::from_fn_with_state(
/// (auth_provider, config),
/// auth_middleware::<MyAuthProvider>
/// ));
/// ```
pub async : ,
request: Request,
next: Next,
) where
P: AuthProvider,