首页
学习
活动
专区
圈层
工具
发布

让浏览器下载文件的一些手段

IE ,这也是许多业务需求需要考虑的。...总结一下: 未在响应头设置Content-Disposition信息(例如一般直接定位资源的同源URL),download属性可以重置文件名。...浏览器在内部通过URL.createObjectURL()创建一个对 Blob 或 File 对象的特殊引用,生成的 Blob URL 只能在浏览器本地的单个实例和同一会话中使用,并且这个 URL 对象会在页面退出的时候被浏览器释放...Blob 为 Web 开发提供了一个非常有用的功能:创建 Blob URL。...将二进制数据封装为 Blob 对象,然后使用URL.createObjectURL()生成 Blob URL,由于Blob URL本身就是一个同源URL,可以使用该 URL 配合download解决跨域资源的下载以及命名问题

10K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Vue 前端通过 Get 和 Post 方法调用后台接口下载文件的实现方式及方法集合

    基于Blob对象的文件下载方案当后端返回的是文件流时,可以通过Blob对象处理并实现文件下载。...这种方案的核心是利用JavaScript的Blob对象创建二进制文件,然后通过URL.createObjectURL生成临时URL供用户下载。.../octet-stream' }); // 创建临时URL const blobUrl = URL.createObjectURL(blob); // 创建a标签并触发下载...'] || 'application/octet-stream' }); // 创建临时URL const blobUrl = URL.createObjectURL...和URL.createObjectURL的旧浏览器(如IE10及以下),需要提供备选方案可以考虑使用FileSaver.js等第三方库增强兼容性通过以上方案,你可以在Vue项目中优雅地实现文件下载功能,

    1.5K10

    # 前端文件下载的正确打开方式

    这里主要的逻辑是当我们的请求成功后,我们会拿到响应体的response,这个response就是我们要下载的内容,然后我们把它转换成blob对象,然后通过URL.createObjectURL来创建一个...这里的知识点就有两个,一个是blob对象,一个是URL.createObjectURL。 # blob对象 Blob对象表示一个不可变、原始数据的类文件对象。...# URL.createObjectURL URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的 URL。...这个 URL 的生命周期和创建它的窗口中的 document 绑定。这个新的 URL 对象表示指定的 File 对象或 Blob 对象。...这个方法是用来创建一个url的,它的作用是把一个blob对象转换成一个url,这个url可以用来下载文件,也可以用来预览文件,代码如下: const url = URL.createObjectURL(

    45340

    关于 Blob

    [WechatIMG6.png] [WechatIMG5.png] Blob URL 就是以 blob: 开头的一段地址,指向的是一个二进制数据 使用 URL.createObjectURL(blob...Blob(blobParts[, options]) 返回一个新创建的 Blob 对象,其内容由参数中给定的数组串联组成 参数说明: blobParts:数组类型,数组中的每一项连接起来构成 Blob...,可赋值到 a 标签 href 属性进行下载 const url = URL.createObjectURL(blob) 通过 Blob 生成文件、利用 Blob URL 获取下载链接,这样就实现后端返回二进制格式的文件进行合并再下载...形式呢 从 ==URL.createObjectURL(blob)== 方法来看,首先要拿到存储这个视频原始数据的 Blob 对象 平时我们请求接口可以使用 axios / ajax / xhr 或...应当是返回图片和视频的数据,这种情况只要设置正确==responseType==才能拿到我们想要的格式数据 // responseType 参数如下: // text 字符串;blob Blob对象;arraybuffer

    3K10

    前端实现文件下载功能的三种方式

    已知文件内容,通过URL.createObjectURL()下载文件 此方式需与后端配合,当点击下载按钮时,请求接口,返回文件流。...URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL。这个 URL 的生命周期和创建它的窗口中的 document 绑定。...这个新的URL 对象表示指定的 File 对象或 Blob 对象。 createObjectURL()支持传入 File 对象、Blob 对象或者 MediaSource 对象(媒体资源)。...(url) // 销毁 document.body.removeChild(a) } }, 注意:URL.createObjectURL()创建的对象使用完成后,即下载后可以通过URL.revokeObjectURL...理论上讲dom销毁时,URL.createObjectURL()创建的对象也会随之销毁,我们可以不必手动销毁。但当页面有类似表格形式的文件列表时,下载完文件立即手动销毁对象无疑是最好的选择。 3.

    11.8K61
    领券