Sinatra sinatra 如何判断 MIME_TYPE

metal · 2012年09月12日 · 最后由 metal 回复于 2012年09月12日 · 2765 次阅读

自己在学习过程碰到了这个问题,上传图片的时候,我限制了除 jpg,gif,png 的文件,不过我只要改后缀名,其他什么的是假的。File.ftype() 只要是文件都是 file 这个值。救我吧。

#1 楼 @reus 很丰富哈。。谢谢。我刚刚找到了 mini_magick 获得 mime_type 的方法了。我恰好用了 mini_magick

搞是搞好了。目前问题停留在验证上面。我不管上传什么文件提示错误。 这个 MiniMagick::Image.new(file) 获得可能都不是完整的路径。有什么办法解决吗?

validate :file_format_error

def file_format_error
  if MiniMagick::Image.new(file) !~ /^image\/.*?jpeg|jpg|png|bmp|gif$/i
    errors.add(:file, "上传的文件格式错误")
  end
end
需要 登录 后方可回复, 如果你还没有账号请 注册新账号