首页 » PHP教程 » phpjsblob技巧_blobhttp地址的事理及生成方法

phpjsblob技巧_blobhttp地址的事理及生成方法

访客 2024-11-27 0

扫一扫用手机浏览

文章目录 [+]

比如日常利用的一些音频, 视频, 图片, 我们都可以利用其 Blob 二进制数据流来表征数据, 而非利用 uri,就像常常用到的 image src 的 dataUrl。

要利用 blob 来表征数据资源, 需做到以下两点:

phpjsblob技巧_blobhttp地址的事理及生成方法

1、做事端返回的为资源的二进制数据

phpjsblob技巧_blobhttp地址的事理及生成方法
(图片来自网络侵删)

2、前端吸收到二进制数据后, 利用 URL.createObjectURL(blobData) 方法将做事端返回的二进制数据转换为 blob 的 url 资源挂载到相应的资源工具。

实例

对 video.mp4 资源加密, 不该用静态 url 进行加载, 利用 blob url 进行加密。

做事端 index.php

<?php// 返回二进制流数据$file_path = __DIR__ . '/video.mp4';$file_size = filesize($file_path);$oct_data = fread(fopen($file_path, "r"), $filesize);header("Content-type: video/mpeg4;charset=UTF-8");header("Content-Length: " . $filesize);echo $oct_data;

前端 index.html

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Blob Url</title></head><body><video id="video" width="400" controls="controls"></video><script type="text/javascript">//创建XMLHttpRequest工具var xhr = new XMLHttpRequest();//配置要求办法、要求地址以及是否同步xhr.open('POST', '/index.php', true);//设置要求结果类型为blobxhr.responseType = 'blob';//要求成功回调函数xhr.onload = function(e) {if (this.status == 200) {//要求成功//获取blob工具var blob = this.response;//获取blob工具地址,并把值赋给容器document.getElementById("video").src = URL.createObjectURL(blob);}};xhr.send();</script></body></html>

这样真是的视频资源静态地址就可以被隐蔽掉了。

var blob = new Blob("保存为blob形式的数据");var url = new URL.createObjectURL(blob);

可以被img等标签利用, 例如:image.src = url;

标签:

相关文章

执业药师试卷代码解码药师职业发展之路

执业药师在药品质量管理、用药安全等方面发挥着越来越重要的作用。而执业药师考试,作为进入药师行业的重要门槛,其试卷代码更是成为了药师...

PHP教程 2025-02-18 阅读1 评论0

心灵代码主题曲唤醒灵魂深处的共鸣

音乐,作为一种独特的艺术形式,自古以来就承载着人类情感的表达与传递。心灵代码主题曲,以其独特的旋律和歌词,唤醒了无数人的灵魂深处,...

PHP教程 2025-02-18 阅读1 评论0

探寻福建各市车牌代码背后的文化内涵

福建省,地处我国东南沿海,拥有悠久的历史和丰富的文化底蕴。在这片充满魅力的土地上,诞生了许多具有代表性的城市,每个城市都有自己独特...

PHP教程 2025-02-18 阅读1 评论0

探寻河北唐山历史与现代交融的城市之光

河北省唐山市,一座地处渤海之滨,拥有悠久历史和独特文化的城市。这里既是古丝绸之路的起点,也是中国近代工业的发源地。如今,唐山正以崭...

PHP教程 2025-02-18 阅读1 评论0