fix: release 编译修复 — FromStr类型 + env borrow + tower limit feature

- CLI: EcLevel::from_str 返回 QrError 而非 String, 修正 map_err 类型注解
- CLI: 密码环境变量 or_else 闭包 borrow 修复 (临时值生命周期)
- Web: tower 添加 limit feature, ConcurrencyLimitLayer 替代不存在的 RateLimitLayer
- Web: QrError 转为 .to_string() 适配 IntoResponse
This commit is contained in:
2026-06-21 16:22:05 +08:00
parent b053272825
commit 5651dbf732
4 changed files with 8 additions and 5 deletions
+1 -1
View File
@@ -12,4 +12,4 @@ tokio = { version = "1", features = ["full"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
tower-http = { version = "0.6", features = ["cors", "limit", "set-header"] }
tower = "0.5"
tower = { version = "0.5", features = ["limit"] }
+1 -1
View File
@@ -62,7 +62,7 @@ async fn index() -> Html<&'static str> {
fn generate_qr_inner(text: &str, level_str: &str, margin: u8, size: u8, fmt: &str) -> impl IntoResponse {
let level = match EcLevel::from_str(level_str) {
Ok(l) => l,
Err(e) => return (StatusCode::BAD_REQUEST, e).into_response(),
Err(e) => return (StatusCode::BAD_REQUEST, e.to_string()).into_response(),
};
// 验证参数范围