diff --git a/library/src/middleware/req_ctx.rs b/library/src/middleware/req_ctx.rs index 0668573..5d25a07 100644 --- a/library/src/middleware/req_ctx.rs +++ b/library/src/middleware/req_ctx.rs @@ -3,7 +3,7 @@ use http::{header, StatusCode}; use i18n::{message, message_ids::MessageId}; use jsonwebtoken::{decode, DecodingKey, Validation}; -use crate::{cache::account_cache::LOGIN_CACHE, config, context::{Context, WhiteContext}, token::Claims}; +use crate::{cache::account_cache::LOGIN_CACHE, config, context::{Context, WhiteContext}, model::response::ResErr, token::Claims}; const WHITE_LIST: &[(&str, &str)] = &[ ("POST", "/account/sys"), @@ -43,13 +43,13 @@ pub async fn authenticate_ctx(mut req: Request, next: Next) -> Response { let parts: Vec<&str> = header_value.to_str().unwrap_or("").split_whitespace().collect(); if parts.len() != 2 || parts[0] != "Bearer" { tracing::error!("无效的 authorization 请求头参数"); - return (StatusCode::BAD_REQUEST, message!(&language, MessageId::BadRequest)).into_response(); + return ResErr::params(message!(&language, MessageId::BadRequest)).into_response(); } parts[1] }, None => { tracing::error!("缺少 authorization 请求头参数"); - return (StatusCode::UNAUTHORIZED, message!(&language, MessageId::BadRequest)).into_response() + return ResErr::auth(message!(&language, MessageId::BadRequest)).into_response() }, }; @@ -60,7 +60,7 @@ pub async fn authenticate_ctx(mut req: Request, next: Next) -> Response { let account = LOGIN_CACHE.get(&decoded.claims.sub).await; if account.is_none() { tracing::error!("无效的 token"); - return (StatusCode::UNAUTHORIZED, message!(&language, MessageId::BadRequest)).into_response(); + return ResErr::auth(message!(&language, MessageId::BadRequest)).into_response(); } let account = account.unwrap(); // 判断token是否有效(注释掉,如果服务因为升级等原因手动重启了,缓存的数据也不再存在) @@ -78,7 +78,7 @@ pub async fn authenticate_ctx(mut req: Request, next: Next) -> Response { }, Err(_) => { tracing::error!("无效的 token"); - return (StatusCode::UNAUTHORIZED, message!(&language, MessageId::BadRequest)).into_response(); + return ResErr::auth(message!(&language, MessageId::BadRequest)).into_response(); } } } \ No newline at end of file