实务专题 · 交付验收

中文下载文件名,需要单独的响应头约定

双语方案正文完全正常,下载文件名仍可能乱码。文件内容与服务器建议保存名是两件事,应约定安全英文后备名和国际化文件名,而不是每次客户投诉后手动改名。

官方依据与范围

Content-Disposition支持filename*编码;客户端理解两者时优先采用filename*。 官方参考 · 2026年10月17日核对.

已填写的合成验收例子

合成教学例子,不是真实客户案例或真实平台测评。窄屏可横向滚动查看完整表格。

输入核对口径预期
英文后备proposal.pdf;UTF-8报价.pdf国际化名称拟显示报价.pdf
浏览器不支持国际化字段仍有安全后备proposal.pdf
建议路径../报价.pdf不可信路径拒绝路径,不能作存储地址

可执行的交付检查

  1. 把文档身份、访问权限与显示文件名分开。
  2. 对同一个合成文件记录响应头、语言、浏览器及实际保存名。
  3. 测试英文后备、中文和拒绝分隔符,不能直接插入客户提供的路径。

怎样解释输出

附带检查只证明UTF-8名称能往返编解码,不保证所有浏览器保存名相同。验收须记录支持浏览器的实际结果;它不同于CSV内容编码,正文正常不代表下载名称正确。

明确的适用边界

不是完整响应头解析器、路径净化器、跨域下载修复或文档权限实现,不使用真实客户文件。

复核有限教学模型

保存两份文件到同一目录,用Node22或更新版本运行下面命令。JSON包含输入与预期;脚本仅处理合成数据,无网络、密钥、付款或付费API调用。通过不等于真实系统已经通过验收。

已填写输入与预期 · 可读教学脚本

node check.mjs bilingual-download-filename-header.json