Files
FileShare/docs/api/12-logo.md
T
SKYMirror 9686fe887a FileCodeBox Go 重写版 v2.5.6(安全审计修复版)
Go 1.27.1 (Gin+GORM) + Vue 3 文件快传服务:

- 安全审计全部修复(docs/security-audit-2026-09-05.md):
  bcrypt 密码哈希与自动升级、presign 直传服务端大小/内容校验、
  全局请求体上限、依赖升级(govulncheck 0 命中)、janitor 后台清理、
  管理端审计动作落库、/admin CORS 收紧、通知内容白名单净化、
  会话默认 7 天、限流缓存故障降级、robots.txt 端点等
- 前端:取件链接复制修复(不再重复拼接提取码)、markdown 净化器加固
- Redis 支持库号(FCB_REDIS_DB / redis://…/db URL)
- 文档:docs/api/* 与 openapi.yaml 同步最新行为(robots.txt、
  提码 5 位起、chunk 32MiB 上限、admin 审计动作等)

验证:gofmt/go vet/go test 全绿;二进制端到端冒烟通过
2026-09-05 04:22:41 +08:00

2.5 KiB
Raw Blame History

Logo 自定义

默认 Logo(内置,v2 需求 ⑤)

默认值 用途
页面导航 Logo 前端打包本地资源 /assets/logo-*.svg(源:web/src/assets/brand/logo.svg 导航栏 <img>config.logo_url 为空时回落使用
favicon / 备用 Logo 前端打包本地资源 /assets/favicon-*.png(源:web/src/assets/brand/favicon.png index.html <link rel="icon"> + 动态 favicon 回落

v2 起默认不再引用远程 URLGET /api/v1/configlogo_url/favicon_url 默认下发空串, 前端 displayLogoUrl/displayFaviconUrl 判空后回落到打包的本地资源。 管理端仍可设置任意 URL 全站替换(三步如下)。

管理端自定义(三步)

  1. 登录后台POST /admin/login 获取 Bearer 令牌。
  2. 保存配置PATCH /admin/config/update 更新 logo_url(与可选 favicon_url),值为图片 URL 或经管理端上传后得到的地址。
  3. 全站生效:保存即写入 settings KV 并热更新,前端读取公共配置立即换新 Logo,无需重启。

curl 示例:

curl -s -X PATCH http://localhost:8466/admin/config/update \
  -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
  -d '{"logo_url":"https://cdn.example.com/logo.svg","favicon_url":"https://cdn.example.com/favicon.png"}'
{ "code": 200, "msg": "ok", "data": { "ok": true } }

也可以在管理界面「系统设置」页操作(上传图片或填写 URL),效果相同。

校验生效

curl -s http://localhost:8466/api/v1/config
{
  "code": 200, "msg": "ok",
  "data": { "config": { "logo_url": "https://cdn.example.com/logo.svg", "favicon_url": "https://cdn.example.com/favicon.png" } }
}

恢复默认

logo_url / favicon_url 置回默认值(空串,前端回落本地打包资源)即可:

curl -s -X PATCH http://localhost:8466/admin/config/update \
  -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
  -d '{"logo_url":"","favicon_url":""}'

相关行为

  • 前端运行时优先读取配置值;空值回退前端打包的本地资源(web/src/assets/brand/logo.svg + favicon.png,经 displayLogoUrl/displayFaviconUrl 判空回落)。
  • site_name 同样支持运行时自定义(PATCH /admin/config/updatesite_name 键)。
  • Logo/favicon 仅涉及展示层,修改不影响会话与令牌(不轮换 jwt_secret)。