数据是否是嵌入私有视频的解决方案?

时间:2014-08-28 18:51:37

标签: php laravel html5-video private data-uri

我正在laravel 4中创建一个网站,其中经过身份验证的用户只能观看他们的私人视频。这意味着Pete可以观看Pete的视频,但不能观看Paulie的视频。

由于视频对每个用户都是私有的,因此它们不可能位于公共文件夹中。但是,我可以在src属性中添加什么? HOHO!只需打一下数据并称之为一天!控制器检查用户是否可以看到视频,然后像this

那样提供服务
<video controls> 
    <source type="video/webm" src="<?php echo getEncodedVideoString('webm', 'parrots-small.webm'); ?>"> 
    <source type="video/mp4" src="<?php echo getEncodedVideoString('mp4', 'parrots-small.mp4');?>">
</video>

就这样,不需要链接,Pete也不会偷看!

但是由于一些无法解释的原因,我有这样的感觉,在我背后的Torvalds的手在我脖子上方抬起来给我一个威严的耳光。

有没有正确的方法呢?生气的程序员会跟我回家吗?

1 个答案:

答案 0 :(得分:1)

将视频作为数据URL嵌入HTML页面非常愚蠢,特别是因为视频通常是大文件,而数据URL的Base64编码会增加大约33%的大小开销。

使用普通网址从服务器请求视频,并配置服务器以检查是否允许请求用户访问所请求的视频,如果没有,则返回403 Forbidden响应。