sis*_*ssy 5 assets ruby-on-rails video-streaming html5-video ruby-on-rails-4
我想在我的页面中放置一些html5视频,但只能向登录的用户提供对此视频的访问权限(因此,未登录的用户必须看不到视频,如果他们有网址的话):
<video width="320" height="240" controls>
<source src="/video.mp4" type="video/mp4">
<source src="/video.m4v" type="video/m4v">
Your browser does not support the video tag.
</video>
Run Code Online (Sandbox Code Playgroud)
我在我的行动中尝试了类似的东西(使用前过滤器进行访问限制):
def video
respond_to do |format|
format.m4v{
send_data File.join([Rails.root, "public", "videos", "sample.m4v"]), type: 'video/m4v', disposition: :inline
}
format.mp4{
send_data File.join([Rails.root, "public", "videos", "sample.mp4"]), type: 'video/mp4', disposition: :inline
}
end
end
Run Code Online (Sandbox Code Playgroud)
但这是将文件作为附件发送,而不仅仅是提供它.
可能吗?如果是的话,怎么办呢?
谢谢
现在这工作了,我缺少一个选项,那就是:stream => true。这样视频就可以以正确的方式提供。
send_file File.join([Rails.root, "private/videos", @lesson.link_video1 + ".#{extension}"]),
:disposition => :inline, :stream => true
Run Code Online (Sandbox Code Playgroud)
现在的问题是另一个问题,我在这里问的
| 归档时间: |
|
| 查看次数: |
1366 次 |
| 最近记录: |