Skip to content

相片页面的保存、预览与删除流程 ​

相片页面将“文件列表”“图片读取”“浏览器缓存”和“服务端删除”分成不同阶段。理解这四层可以避免把缩略图问题误判成文件丢失。

读取列表 ​

打开页面后先读取当前账号的文件名列表。列表为空时:

  • 确认账号和 Token;
  • 刷新一次;
  • 检查是否是新账号或没有生成相片;
  • 不要立即删除或恢复缓存。

列表请求成功但单张图片失败时,保留文件名并单独显示失败状态。

预览图片 ​

点击缩略图后按需读取原图。预览时:

  1. 检查当前账号和文件名;
  2. 等待图片读取;
  3. 关闭预览释放临时对象;
  4. 需要留档时使用下载按钮;
  5. 分享前遮挡账号、二维码、用户和现场信息。

占位图、懒加载延迟或浏览器缓存失败不代表服务端文件不存在。可以清除本地图片缓存后重新读取,但清除缓存不会修复服务端文件。

下载留档 ​

下载前确认:

  • 文件来自当前列表;
  • 当前账号正确;
  • 浏览器允许下载;
  • 保存位置受保护;
  • 文件名不会覆盖另一张重要图片。

下载后记录时间和大小,不需要把图片上传到错误收集服务。相片可能包含个人信息和现场设备,按敏感数据保存。

删除单张 ​

推荐顺序:

  1. 下载需要保留的图片;
  2. 刷新列表;
  3. 选择目标文件;
  4. 显示文件名和预览摘要;
  5. 二次确认;
  6. 删除一次;
  7. 重新读取列表。

删除请求超时后不要自动重试。刷新列表后目标不存在,可以按已删除处理;仍存在时再由用户决定是否重试。

删除全部 ​

删除全部相片是高风险不可逆动作。确认框必须明确写“全部相片”,并建议用户先下载留档。不要把删除全部实现成无提示的循环单张删除,也不要在列表读取失败时把空列表当作“没有文件”。

浏览器缓存 ​

浏览器缓存可能保存缩略图或临时对象:

  • 清除缓存只影响当前设备;
  • 不会删除服务端文件;
  • 也不能替代下载备份;
  • 切换账号时要清理旧页面数据,避免显示旧图片。

常见问题 ​

列表有文件但缩略图空白 ​

检查单张读取响应的 Content-Type、网络和文件名编码。重新打开页面一次;不要删除文件。

下载得到错误页 ​

客户端可能把 JSON 错误或 HTML 错误页保存成文件。检查状态码和 Content-Type,重新调用下载,不要把错误页当相片留档。

删除后仍显示缩略图 ​

可能是浏览器缓存。刷新列表并清理本地图片缓存;如果列表仍有文件,再向管理员反馈。

切换账号后看到上一账号的图片 ​

停止旧账号请求,清空页面状态和对象 URL,重新读取新账号列表。不要依靠浏览器刷新前的缩略图判断归属。

验收清单 ​

  • [ ] 空列表和请求失败文案不同;
  • [ ] 缩略图失败不清除文件名;
  • [ ] 下载前显示目标文件;
  • [ ] 删除单张有二次确认;
  • [ ] 删除全部有明确范围;
  • [ ] 超时后不会自动重复删除;
  • [ ] 账号切换不会复用旧图片;
  • [ ] 截图和下载文件已按隐私要求处理。

Released under the CC BY-NC-SA 4.0 License.