Files
zero2prod/src/routes/admin/logout.rs
2025-09-18 21:00:01 +02:00

13 lines
470 B
Rust

use crate::{routes::AdminError, session_state::TypedSession};
use axum::{
http::{HeaderMap, StatusCode},
response::{IntoResponse, Response},
};
#[tracing::instrument(name = "Logging out", skip(session))]
pub async fn logout(session: TypedSession) -> Result<Response, AdminError> {
session.clear().await;
let mut headers = HeaderMap::new();
headers.insert("HX-Redirect", "/login".parse().unwrap());
Ok((StatusCode::OK, headers).into_response())
}