This commit is contained in:
2026-08-31 16:37:26 +08:00
parent a1ca9d9a43
commit d863a42d8a
9 changed files with 291 additions and 67 deletions
@@ -160,7 +160,7 @@ Expected: 无输出、exit 0
curl -s -o /dev/null -w "%{http_code} %{content_type}\n" "http://127.0.0.1:8080/api/v1/app/cover?namePrefix=RNPHE"
curl -s -o /dev/null -w "%{http_code}\n" "http://127.0.0.1:8080/api/v1/app/cover?namePrefix=不存在的"
```
Expected: 第一行 `200 image/jpeg`(或图片 mime),第二行 `500`(统一包装的错误码;若无 404 专门码,确认返回非 200 即可)。
Expected: 第一行 `200 image/jpeg`(或图片 mime),第二行 `200` + body `{"code":1010,...}`(项目统一响应惯例:HTTP 恒 200,业务错误在 body code;App 端图片解码失败走占位图)。
- [ ] **Step 5: Commit**
@@ -27,7 +27,7 @@
- 按 namePrefix 查数据集(`dao.Dataset`),取其 `Cover` 字段文件名。
- 返回该封面文件(复用现有封面文件定位逻辑,参照 `service/dataset.go``CoverFile`)。
- 数据集不存在 / 无封面 / 文件缺失 → 404
- 数据集不存在 / 无封面 / 文件缺失 → 统一错误码(HTTP 200 + body code,项目统一响应惯例;App 端图片解码失败走占位图)
- 分层约束:controllerapp_version.go 或新增)→ service(查数据集 + 定位文件)→ dao;响应体直接写(文件型响应属「直接写响应体」例外,由 controller 完成,与现有 admin 图片接口一致)。
### 2. models[] 增加 coverUrl
@@ -88,5 +88,5 @@ app 端拼接方式与 downloadUrl 相同:`$baseUrl + coverUrl`。
## 影响面与风险
- 行为变更:启动不再自动下载模型 → 首次使用需手动点「使用」(已确认)。
- 封面 URL 使用 namePrefix 定位数据集:无 namePrefix 的数据集不会出现在目录中(目录只含已训练模型,均有前缀);路由对缺失前缀返回 404app 显示占位图。
- 封面 URL 使用 namePrefix 定位数据集:无 namePrefix 的数据集不会出现在目录中(目录只含已训练模型,均有前缀);路由对缺失前缀返回统一错误码(HTTP 200 + body code),app 图片解码失败显示占位图。
- 不新增依赖:图片用内置 `Image.network`