功能
用于在浏览器中生成一个临时的 URL,该 URL 用于引用内存中的一个 Blob 对象或 File 对象。这种 URL 可以用来下载文件或在网页中显示文件内容(例如图像、视频等)。
使用场景
- 下载文件:通过生成的 URL 让用户下载通过 JavaScript 创建或修改的文件。
- 显示文件:在不需要上传到服务器的情况下显示用户本地的文件,如预览上传的图片。
使用方法
需要配置响应类型:
return http.get('url', {responseType: 'blob'
})
// 创建一个包含文本数据的 Blob 对象
const blob = new Blob(["Hello, world!"], { type: 'text/plain' });// 使用 createObjectURL 生成一个指向该 Blob 的临时 URL
const url = window.URL.createObjectURL(blob);// 创建一个链接元素
const a = document.createElement('a');
a.href = url;
a.download = 'example.txt'; // 设置下载的默认文件名// 模拟点击以触发下载
document.body.appendChild(a); // 将链接添加到页面
a.click(); // 模拟点击
document.body.removeChild(a); // 下载后移除链接// 释放内存中的 URL
window.URL.revokeObjectURL(url);