前端预览pdf文件(后端返回pdf文件流)

前端预览pdf文件(后端返回pdf文件流)

怎么判断后端是不是返回的文件流?

我的后端给的接口直接在浏览器输入完整地址会自动下载pdf文件,这样就是返回的pdf文件流,亲试比较方便的有iframe和直接window.open临时地址.

window.open临时地址.
复制代码
 fetch(
          `${this.$config.VUE_APP_BASE_API}/api/ai/knowledge/api/preview?fileId=${data.fileId}`,//你的pdf文件下载路径
          {
            headers: {
              Authorization: getToken(),
            },
            method: "GET",
            responseType: "arraybuffer",//一定是这个 前面一直填的"blob"一直不成功,改成这个就好了
          }
        )
          .then((res) => res.blob())
          .then((res) => {
            const binaryData = [];
            binaryData.push(res);
            //获取blob链接
            this.pdfSrc = window.URL.createObjectURL(
              new Blob(binaryData, { type: "application/pdf" })
            );
            window.open(this.pdfSrc); //此地址也可直接填入iframe的src中以达到预览的目的
          });
iframe
复制代码
<iframe style="width: 800px; height: 500px" :src="pdfSrc"></iframe>
    </div>
相关推荐
IT乐手9 分钟前
佛德角逼平西班牙,国足还有啥借口?
前端
JustHappy44 分钟前
我汇总了身边朋友的经历才发现,其实第一份实习是最难找的......
前端·后端·面试
星栈1 小时前
Dioxus 的响应式系统:`Signal`、`Memo`、`Effect` 和异步状态到底该怎么分工
前端·前端框架
yingyima1 小时前
Java 正则表达式:比你想象的更强大
前端
yuanyxh4 小时前
macOS 应用 - 纯对话生成
前端·macos·ai编程
大家的林语冰4 小时前
ES5 凉凉,Babel 8 正式发布,默认不再编译为 ES5 和 CJS......
前端·javascript·前端工程化
光影少年5 小时前
react批量更新、同步/异步更新场景
前端·react.js·掘金·金石计划
假如让我当三天老蒯5 小时前
模块化:ES Module 与 CommonJS 的区别
前端·面试
用户40950115773175 小时前
Private Forge v2.0 发布:12大前端业务场景技能系统
前端
weedsfly6 小时前
异步编程全景与事件循环——彻底搞懂 JS 执行机制
前端·javascript