Skip to content

发布 v0.5.1:恢复静态资源缓存、root 密码管理与 UI 优化 - #37

Merged
massif-01 merged 1 commit into
mainfrom
fix/v0.5.1-cache-root-password-ui
Jun 11, 2026
Merged

发布 v0.5.1:恢复静态资源缓存、root 密码管理与 UI 优化#37
massif-01 merged 1 commit into
mainfrom
fix/v0.5.1-cache-root-password-ui

Conversation

@massif-01

Copy link
Copy Markdown
Member

概要

本次发布修复了 v0.5.0 引入的 WebUI 加载缓慢问题,新增 root 密码管理功能,并优化了账号安全页面布局。

变更内容

修复:WebUI 静态资源缓存策略恢复

  • 问题:v0.5.0 将 JS/CSS 等静态资源的 Cache-Control 改为 no-cache, no-store, must-revalidate,导致浏览器每次页面切换都重新从 SPIFFS 下载全部资源,造成 WebUI 明显卡顿,SPI 总线争用也拖慢了 SD 卡访问。
  • 修复:恢复为 public, max-age=604800, immutable,仅 index.html 保持 no-cache。OTA 后通过 index.html 中的 ?v= 版本参数实现缓存失效。
  • 影响文件:components/ts_net/src/ts_http_server.c

新增:root 密码管理

  • root 用户可在账号安全页面直接修改自己的密码
  • 新增后端 API auth.root.set_password
  • WebUI 账号安全页面重构为 root 密码管理 + admin 密码管理双区块布局
  • 完整中英文 i18n 支持
  • 影响文件:ts_api_auth.cts_security.hts_auth.capp.jsapi.jszh-CN.jsen-US.jsstyle.css

改进:代码质量

  • ts_service_dump() 改用 ts_service_get_stats() 安全接口,避免直接访问内部结构体
  • 修复 GitHub Actions release 检查步骤缺少 GH_TOKEN 环境变量导致 gh release view 无法鉴权的问题

测试计划

  • 本地编译通过并已通过串口刷写验证
  • CI 自动编译通过
  • 合并后 CI 自动创建 v0.5.1 Release 并附带固件

修复内容:
- 恢复 JS/CSS/字体等静态资源的长期浏览器缓存(max-age=604800, immutable),
  仅 index.html 保持 no-cache,通过 ?v= 版本参数实现缓存失效。
  此修复解决了 v0.5.0 引入的 WebUI 加载缓慢问题。

新增功能:
- root 可在账号安全页面设置自己的密码(后端 API + WebUI + 中英文 i18n)
- 账号安全页面重构:root 密码管理与 admin 密码管理分区显示

代码改进:
- ts_service_dump() 改用 ts_service_get_stats() 安全接口
- 修复 GitHub Actions release 检查步骤的 gh CLI 鉴权问题
@massif-01
massif-01 merged commit 6565cb6 into main Jun 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant