Char cj 2023-02-26 17:47 采纳率: 0%
浏览 12

sccBlob加密newTag和url可以直接访问

MP4视频格式,防止被盗链
在网上看到将src生成blob的方法,但是在新页面和请求url是可以直接盗链的,为什么无效呢?

img

img

img

  • 写回答

1条回答 默认 最新

  • GPT_Pro 2023-02-26 18:31
    关注

    该回答内容部分引用GPT,GPT_Pro更好的解决问题
    MP4视频格式防止被盗链可以通过sccBlob加密的方式来保护,sccBlob是一种新的标准,它可以将某些特定的文件(如视频)编码成一种特殊的格式,这种格式可以在支持HTML5的浏览器上被播放。它将文件加密,然后将加密的文件存储在一个URL中,只有当用户访问该URL时,浏览器才能将文件解码并显示出来。

    具体实现方法如下:首先要生成一个Blob,即一个代表原始数据的对象,这个对象可以直接在内存中存储大量数据。然后,使用URL.createObjectURL()方法将blob对象传递给video标签,即可正常播放视频。

    下面是示例代码:

    let video = document.querySelector('video');
    let blob = new Blob([video], { type: 'video/mp4' });  // 生成blob
    let url = URL.createObjectURL(blob); // 将blob传递给video标签
    video.src = url; // 正常播放视频
    

    由于新页面和请求url是可以直接盗链的,所以src生成blob是无效的。这是因为blob文件本身是不能直接在浏览器中显示出来的,而是需要通过URL.createObjectURL()方法将blob传递给video标签才能正常播放。这就意味着只有正常正常请求url时才能正常显示出来,而不能直接复制url来盗链。
    如果回答有帮助,望采纳。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月26日

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题