在 Safari 中,当文件名包含引号(问题尤为严重)或非 ASCII 字符时,上传的文件似乎存在问题。涉及的文件名如下:
Create New "Open File" Macro and Copy Macro URL 1.1.kmmacros
Create New “Open File” Macro and Copy Macro URL 1.1.kmmacros
第一个文件使用普通双引号,表现非常糟糕;第二个文件使用弯引号,但会被破坏。
参见以下论坛主题:
在 Chrome(Mac)中,两个文件均正常下载为:
Create New _Open File_ Macro and Copy Macro URL 1.1.kmmacros
Create New “Open File” Macro and Copy Macro URL 1.1.kmmacros
第一个文件中的双引号被替换为下划线,但这可以接受,可能是某处的有意选择。
然而在 Safari 中,文件下载为:
Create New .dms
Create New âOpen Fileâ Macro and Copy Macro URL 1.1.kmmacros
第一个情况尤其令人担忧,因为文件名(包括扩展名)已被完全破坏。这可能带来安全隐患,因为引号的处理方式尚不清楚。
第二个问题似乎是 UTF 编码转换问题。
我怀疑这是 Discourse(我的服务器版本为 2.3.2)或 Safari 中的回归问题,因为我们此前应该已经遇到过类似情况。不过,我也未能找到任何明确在文件名中包含引号的旧案例以供核查。确实存在一些带有非 ASCII 字符的旧文件(例如 此处),但我之前从未发现它们无法正常工作。
更奇怪的是,该问题在 Chrome 中不会出现,而在 Safari 中却存在,因此这很可能是某种客户端代码问题。