文件上传的MIME类型为"application/x2x-download" - 这是什么意思?

4
我的Rails网站允许用户上传文档,我使用attachment_fu插件。我有一个允许的[MIME]内容类型列表 - 标准图像格式、Office文档、PDF等。我有一个用户无法上传任何PDF文档,因为验证失败,在查看日志时,attachment_fu认为MIME类型是“application/x2x-download”。该用户使用的是Windows XP上的Firefox浏览器。当我尝试使用OS X上的Firefox或Safari或IE 6/7/8上传PDF时,它可以正常工作。似乎只是她的浏览器出了问题。
我在谷歌上搜索了一下这个MIME类型,似乎并不存在。
理论上,我可以忽略客户端告知的MIME类型并尝试自己识别文件,也许要调用“file -b --mime-type”命令,但这似乎有点不靠谱。
另一个流行的Rails附件插件Paperclip也不会自己执行MIME识别,而是尝试信任客户端浏览器。
你们认为应该怎么做?忽略客户端并[尝试]自己识别上传文件,还是试图弄清楚为什么这个用户的浏览器首先设置了一个完全无效的MIME类型?
1个回答

1

许多第三方应用程序可以修改客户端MIME类型设置(我曾经使用Amazon的MP3下载器应用程序修改MIME类型进行过自己的冒险),因此您的用户很可能有类似的东西(也许是来自x2x软件的某些东西)。

我建议使用mime/type作为向用户传达什么是有效和无效的内容的手段,并在验证中使用ruby filemagic进行二次检查。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接