回形针安全验证错误mp4

时间:2015-07-21 12:21:44

标签: ruby-on-rails video paperclip

我正在使用Paperclip上传视频,并不断收到有关内容类型的安全验证错误

将mp4保存到我的模型类时的错误是"从文件命令发现的内容类型:video / mp4。请参阅文档以允许此组合。"

保存看起来像这样

AssignmentEventVideo.create(video: "https://s3-ap-southeast-2.amazonaws.com/dev/upload/0c857445-09ad-44b6-bbfa-810a9974a501/ScreenCaptureProject4.mp4")

模型类

class AssignmentEventVideo < ActiveRecord::Base

  has_attached_file :video, :styles => {
                          :medium => { :geometry => "640x480", :format => 'mp4' },
                          :android => { :geometry => "640x480", :format => 'webm'},
                          :mobile => { :geometry => "300x300", :format => 'png', :time => 2 },
                          :thumb => { :geometry => "100x100#", :format => 'png', :time => 2 }
                      }

  validates_attachment_content_type :video, content_type: ['video/mp4']
end

如果尝试禁用验证以及下面的代码,但仍然会抛出错误

 do_not_validate_attachment_file_type :video

我已确认file命令返回正确的类型     file -b --mime ScreenCaptureProject3.mp4

返回

video/mp4; charset=binary

保存适用于另一个接受图像并使用

检查内容的模型类
validates_attachment_content_type :photo, content_type: /\Aimage\/.*\Z/

我不知道接下来要转到哪里 - 除了重新创建课程并将列名更改为不与视频冲突的内容之外?

希望有人可以提供帮助!

1 个答案:

答案 0 :(得分:0)

谢谢katafrakt - 你让我走上了正确的道路。

我正在使用presigned_post并使用JQuery FileUploader上传到S3。这不是设置Content-Type而且我回到了Paperclip不知道如何处理的二进制/八位字节类型。

我在预先签名的帖子上设置content_type,该帖子将正确的元数据存储在S3中,一切都很顺利。