From 6e2b81137344faf848d42d56f71bcfc05590bd01 Mon Sep 17 00:00:00 2001 From: matresnan <1358168412@qq.com> Date: Tue, 19 Aug 2025 22:24:35 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E6=9B=B4=E6=96=B0=E5=BF=BD=E7=95=A5?= =?UTF-8?q?=E8=A7=84=E5=88=99=E3=80=81=E4=BC=98=E5=8C=96=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E5=8F=8A=E6=95=B4=E5=90=88=E9=87=8D=E7=BD=AEtoken=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在忽略文件中新增对.idea目录的忽略规则以避免版本控制该目录。 - 优化HTTP接口文档表格格式并更新接口描述及新增重置token状态接口说明。 - 整合禁用和启用令牌的路由为单一重置状态路由,并修改绑定地址以支持所有网络接口。 --- .gitignore | 1 + README.md | 13 ++++++------- src/main.rs | 44 ++++++++++++++------------------------------ 3 files changed, 21 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index a3bb07f..a49e080 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /target authorize_data/ +.idea/ diff --git a/README.md b/README.md index ea07297..617a1d2 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,9 @@ #### http接口 -| 方法 | doc | 请求字段 | -| ---- | ---- | ---- | +| 方法 | doc | 请求字段 | +|----------|----------------|-------------------| | /create | 根据项目、设备生成token | project、device_id | -| /verify | 验证token有效性 | token | -| /info | 查询token信息 | token | -| /disable | 禁用token | token | -| /enable | 启用token | token | -| /renewal | token续期 | token、days | \ No newline at end of file +| /verify | 验证token有效性 | token | +| /info | 查询token信息 | token | +| /reset | 更新token状态 | token、enable | +| /renewal | token续期 | token、days | \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index 93a6bbe..8b5bf1f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -46,14 +46,11 @@ async fn main() -> Result<(), Box> { .route("/create", get(create_token)) .route("/verify", get(verify_token)) .route("/info", get(get_token_info)) - .route("/disable", get(disable_token)) - .route("/enable", get(enable_token)) + .route("/reset", get(update_token_status)) .route("/renewal", get(renewal_token)) .with_state(state); - let listener = tokio::net::TcpListener::bind("127.0.0.1:3009") - .await - .unwrap(); + let listener = tokio::net::TcpListener::bind("0.0.0.0:3009").await.unwrap(); axum::serve(listener, app).await.unwrap(); Ok(()) } @@ -165,35 +162,16 @@ async fn get_token_info( } } -async fn disable_token( +async fn update_token_status( State(state): State, - Query(args): Query, + Query(args): Query, ) -> (StatusCode, Json) { - let result = state.db.update_token_state(&args.token, 0).await.unwrap(); - if result { - ( - StatusCode::OK, - Json(VerifyResult { - code: 200, - msg: "操作成功".to_owned(), - }), - ) + let result = if args.enable { + state.db.update_token_state(&args.token, 1).await.unwrap() } else { - ( - StatusCode::OK, - Json(VerifyResult { - code: 404, - msg: "操作失败".to_owned(), - }), - ) - } -} + state.db.update_token_state(&args.token, 0).await.unwrap() + }; -async fn enable_token( - State(state): State, - Query(args): Query, -) -> (StatusCode, Json) { - let result = state.db.update_token_state(&args.token, 1).await.unwrap(); if result { ( StatusCode::OK, @@ -332,3 +310,9 @@ struct CreateTokenInfo { token: String, msg: String, } + +#[derive(Deserialize)] +struct UpdateTokenStatus { + token: String, + enable: bool, +}