Files
cc-web/.trellis/tasks/08-07-file-preview-encoding/prd.md
2026-08-07 10:54:08 +08:00

836 B
Raw Blame History

中文文件预览编码兼容

背景

文件浏览器预览部分历史 C# 源文件时ASCII 内容正常但中文注释显示为 <EFBFBD>。这些文件通常使用 GBK、GB2312 或 GB18030而当前服务端固定按 UTF-8 解码。

验收标准

  1. UTF-8含中文保持正确显示。
  2. UTF-8 BOM、UTF-16LE BOM、UTF-16BE BOM 能正确预览,且正文不显示 BOM。
  3. GBK/GB2312/GB18030 中文文本能正确预览。
  4. API 返回实际识别编码,便于定位异常文件。
  5. 二进制文件仍返回 415不因编码回退被误判为文本。
  6. 预览大小限制和路径安全逻辑不变。
  7. 增加端到端回归测试,覆盖 UTF-8、GB18030 与二进制拒绝。

非目标

  • 不修改源文件编码。
  • 不在前端增加手动编码选择器。
  • 不引入新的生产依赖。