diff --git a/services/user-service/user-login-account/src/main.rs b/services/user-service/user-login-account/src/main.rs index ff7d8d8..07dd1d6 100644 --- a/services/user-service/user-login-account/src/main.rs +++ b/services/user-service/user-login-account/src/main.rs @@ -28,12 +28,18 @@ struct LoginRequest { password: String, } -// 登录响应 +// 统一响应包装 #[derive(Serialize)] -struct LoginResponse { +struct ApiResponse { success: bool, - token: Option, message: String, + data: Option, +} + +// 登录业务数据 +#[derive(Serialize)] +struct LoginData { + token: String, } // JWT Claims @@ -87,7 +93,7 @@ async fn main() { async fn login_handler( State(state): State>, Json(payload): Json, -) -> (StatusCode, Json) { +) -> (StatusCode, Json>) { info!("Login attempt for user: {}", payload.username); // 查询用户账号与密码 @@ -115,10 +121,10 @@ async fn login_handler( ( StatusCode::OK, - Json(LoginResponse { + Json(ApiResponse { success: true, - token: Some(token), message: "Login successful".to_string(), + data: Some(LoginData { token }), }), ) } @@ -126,10 +132,10 @@ async fn login_handler( warn!("Invalid password for user {}", payload.username); ( StatusCode::UNAUTHORIZED, - Json(LoginResponse { + Json(ApiResponse { success: false, - token: None, message: "Invalid credentials".to_string(), + data: None, }), ) } @@ -137,10 +143,10 @@ async fn login_handler( warn!("Password verification error: {:?}", e); ( StatusCode::INTERNAL_SERVER_ERROR, - Json(LoginResponse { + Json(ApiResponse { success: false, - token: None, message: "Internal error".to_string(), + data: None, }), ) } diff --git a/services/user-service/user-login-email/src/main.rs b/services/user-service/user-login-email/src/main.rs index 792d6fc..438022e 100644 --- a/services/user-service/user-login-email/src/main.rs +++ b/services/user-service/user-login-email/src/main.rs @@ -28,12 +28,18 @@ struct LoginRequest { password: String, } -// 登录响应 +// 统一响应包装 #[derive(Serialize)] -struct LoginResponse { +struct ApiResponse { success: bool, - token: Option, message: String, + data: Option, +} + +// 登录业务数据 +#[derive(Serialize)] +struct LoginData { + token: String, } // JWT Claims @@ -87,7 +93,7 @@ async fn main() { async fn login_handler( State(state): State>, Json(payload): Json, -) -> (StatusCode, Json) { +) -> (StatusCode, Json>) { info!("Login attempt for email: {}", payload.email); // 查询用户邮箱与密码 @@ -115,10 +121,10 @@ async fn login_handler( ( StatusCode::OK, - Json(LoginResponse { + Json(ApiResponse { success: true, - token: Some(token), message: "Login successful".to_string(), + data: Some(LoginData { token }), }), ) } @@ -126,10 +132,10 @@ async fn login_handler( warn!("Invalid password for email {}", payload.email); ( StatusCode::UNAUTHORIZED, - Json(LoginResponse { + Json(ApiResponse { success: false, - token: None, message: "Invalid credentials".to_string(), + data: None, }), ) } @@ -137,10 +143,10 @@ async fn login_handler( warn!("Password verification error: {:?}", e); ( StatusCode::INTERNAL_SERVER_ERROR, - Json(LoginResponse { + Json(ApiResponse { success: false, - token: None, message: "Internal error".to_string(), + data: None, }), ) }