【发布时间】:2010-03-01 23:41:55
【问题描述】:
我的 Rails 站点允许用户上传文档,我使用的是 attachment_fu 插件。我有一个允许的 [MIME] 内容类型列表 - 标准图像格式、Office 文档、PDF 等。我有一个用户由于验证失败而无法上传任何 PDF 文档,查看日志 attachment_fu 认为 MIME类型是“应用程序/x2x-下载”。用户浏览器是 Windows XP 上的 Firefox。当我尝试在 OS X 或 Safari 或 IE 6/7/8 上使用 Firefox 自己上传 PDF 时,它工作得很好。似乎只是她的浏览器的问题。
我搜索了这个 MIME 类型,但它似乎不存在。
理论上,我可以忽略客户端告诉的 MIME 类型,并尝试自己识别文件,也许可以使用 file -b --mime-type 命令,但这似乎很麻烦。
另一个流行的 Rails 附件插件 Paperclip 本身不进行 MIME 识别,也尝试信任客户端浏览器。
你们觉得呢?忽略客户端并[尝试]自己识别上传,或者尝试弄清楚为什么这个用户的浏览器首先设置了完全无效的 MIME 类型?
【问题讨论】: