首页 > 解决方案 > 如何将 JS blob 加载到浏览器中以显示文件

问题描述

这是我的情况。我正在制作一个包含以下内容的个人文件共享网站:

这些在两个不同的 url 下运行

上传我的结果后是一个api.share.domain.tld/{identifier}返回文件的 url。

我不希望能够直接在share.domain.tld/{identifier}我的 vue 应用程序运行所在的浏览器中显示文件。

我的第一个解决方案是在路由器中使用重定向,通过使用beforeEnter和设置window.location.href从浏览器访问时工作正常,但是当在share.domain.tld/{identifier}Discord 等应用程序上发送 url 时,它不会遵循重定向并且无法显示预览对于文件。

如果我通过 axios 请求文件并为其创建 blob,我如何使用 js 将文件数据加载到浏览器中,就像从 url 加载文件时一样,让浏览器使用它通常的处理方式,例如显示图像或pdfs,但下载其他类型的文件,如zips?

标签: javascriptasp.net.netvue.js

解决方案


推荐阅读