feat: add auth middleware chain with ctx resolver and cookie parsing
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
mod ctx;
|
||||
mod error;
|
||||
mod model;
|
||||
mod web;
|
||||
@@ -11,7 +12,12 @@ use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt};
|
||||
|
||||
use crate::{
|
||||
model::FileController,
|
||||
web::{routes_file::routes_file, routes_health::routes_health, routes_login::routes_login},
|
||||
web::{
|
||||
mw_auth::{mw_ctx_resolver, mw_require_auth},
|
||||
routes_file::routes_file,
|
||||
routes_health::routes_health,
|
||||
routes_login::routes_login,
|
||||
},
|
||||
};
|
||||
|
||||
#[tokio::main]
|
||||
@@ -27,11 +33,18 @@ async fn main() -> Result<()> {
|
||||
|
||||
let file_controller = FileController::new().await?;
|
||||
|
||||
let routes_file =
|
||||
routes_file(file_controller.clone()).route_layer(middleware::from_fn(mw_require_auth));
|
||||
|
||||
let app = Router::new()
|
||||
.nest("/api", routes_file(file_controller))
|
||||
.nest("/api", routes_file)
|
||||
.merge(routes_health())
|
||||
.merge(routes_login())
|
||||
.layer(middleware::map_response(main_response_mapper))
|
||||
.layer(middleware::from_fn_with_state(
|
||||
file_controller,
|
||||
mw_ctx_resolver,
|
||||
))
|
||||
.layer(CookieManagerLayer::new())
|
||||
.fallback_service(ServeDir::new("./"));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user