use axum::{
extract::Request,
middleware::Next,
response::{IntoResponse, Response},
};
use infra::{status::api_err::ApiErr, util::iden::Identity};
pub async fn handle(request: Request, next: Next) -> Response {
let identity = request.extensions().get::<Identity>();
match identity {
None => return ApiErr::Unauthorized.into_response(),
Some(iden) => {
if iden.id() == 0 {
return ApiErr::Unauthorized.into_response();
}
// TODO: ...
}
}
next.run(request).await
}