使用 Axios 从 http 响应下载 PDF

2023-12-28

我正在开发一个带有 Laravel 后端 API 的 Vue 应用程序。单击链接后,我想调用服务器来下载某个文件(大多数情况下是 PDF 文件)。当我做一个get请求与axios我在回复正文中收到了一份 PDF 作为回报。我想直接下载该文件。

为了让您更好地了解响应的情况:

enter image description here (note: I know a real text response is better than an image but I don't see any way to return that because of the length of the actual PDF content..)

有什么方法可以用 JavaScript 之类的东西下载该文件吗?它必须是直接下载,而无需再次单击按钮。

Code

// This method gets called when clicking on a link
downloadFile(id) {
    const specificationId = this.$route.params.specificationId;

    axios
        .get(`${this.$API_URL}/api/v1/suppliersmanagement/product-specifications/${specificationId}/fileupload/${id}/download`, {
            headers: this.headers,
        })
        .then(response => {
            console.log(response);
            // Direct download the file here..
        })
        .catch(error => console.log(error));
},

正如 @Sandip Nirmal 建议我用过的downloadjs效果非常好!不得不对我的代码进行一些调整,但最终成功了。

我的新代码

// npm i downloadjs
import download from 'downloadjs'

// method
downloadFile(file) {
    const specificationId = this.$route.params.specificationId;

    axios
        .get(`${this.$API_URL}/api/v1/suppliersmanagement/product-specifications/${specificationId}/fileupload/${file.id}/download`, {
            headers: this.headers,
            responseType: 'blob', // had to add this one here
        })
        .then(response => {
           const content = response.headers['content-type'];
           download(response.data, file.file_name, content)
        })
        .catch(error => console.log(error));
},
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Axios 从 http 响应下载 PDF 的相关文章

  • 如何将值发布到输入框中?

    Intro I would like to get the current time after clicking at click and POST the value into input text box Note 假设包含引导样式表
  • 有没有办法动态更改 jqGrid 的单元格值?

    这个问题可能已经被问过很多次了 但我想知道是否可以动态更改 jqgrid 的单元格值 我基本上有一个网格 它通过 JSON 字符串加载数据 在特定列的某些行上 该值可能为 null 因此 预先知道哪个行 ID 是一个问题 然后能够将 nul
  • JAVASCRIPT - 为什么这个对象没有改变?

    function myFunc theObject theObject make Ford model Focus year 2006 var mycar make Honda model Accord year 1998 var x my
  • Javascript 进程是否有多个执行线程?

    背景 我正在创建一个 地址簿 类型的应用程序 有很多条目需要加载 一个想法是首先加载一小部分条目 让用户开始 然后将剩余条目排队 优先考虑用户单击的条目 例如 如果他们单击以 X 开头的名称 请先加载这些名称 然后再处理队列的其余部分 这个
  • Vuetify:v-ripple 只能用于块级元素

    我今天刚开始收到此错误 它破坏了我的整个网站 因为我像个傻瓜一样在页面加载时加载 Vuetify 有谁知道这意味着什么或如何解决它 谷歌搜索没有发现任何有用的信息 Edit 对于因网站也损坏而发现此问题的任何人 这可能是因为您加载的位置vu
  • JavaScript 相当于 Python 的参数化 string.format() 函数

    这是 Python 示例 gt gt gt Coordinates latitude longitude format latitude 37 24N longitude 115 81W Coordinates 37 24N 115 81W
  • Apache Thrift Java-Javascript 通信

    我正在编写一个基于 Apache Thrift 的 Java 服务器 它将从 Javascript 客户端接收数据 我已经完成了 Java 服务器 但问题是我可以获得 Javascript 客户端的工作示例 我无法找到一个好的示例 构建文档
  • 使用 float:left 与 display:inline-block 的 jQuery UI 拖放排序比较

    我这里有两个例子 这两个例子之间的唯一区别是 一种使用display inline block 另一种使用float left li doc item 显示 内联块 与 li doc item float left 我的问题是 displa
  • jQuery:将文本区域滚动到给定位置

    我有一个包含很多文本的文本区域
  • Firefox Addon 中的 JQuery 导致多个警告

    我在 Firefox 插件中使用 jquery 但我不断收到大量警告消息 如下所示 anonymous function does not always return a value System JS WARNING resource g
  • Angular 4 Http POST 不起作用

    我希望每个人都做得很好 我最近开始使用 Angular 4 4 我一直在尝试将数据发布到我的 api 服务器 但不幸的是它不起作用 我花了大约两天的时间 但仍然没有成功 甚至已经尝试过 6 7 篇文章角 io https angular i
  • Chrome --app 相当于 Firefox\IE

    我有一个网络应用程序 客户要求单击不同按钮时更改浏览器窗口大小 我发现在那link https stackoverflow com questions 13436855 launch google chrome from the comma
  • Angular2:动态同步http请求

    Goal 发出一系列同步 http 请求并能够将它们作为一个可观察流进行订阅 示例 不工作 let query arr test1 test2 test3 function make request query arr if query a
  • 播放没有音频标签的音频

    是否可以在没有音频标签的情况下仅使用 javascript 播放音频 我通过 tinyMce 编辑器注入脚本 因为我无权访问网站的后端 并且它不支持客户端的音频标签 她只想要当您将鼠标悬停在图像上时发出简单的声音 我已经完成了所有设置 但是
  • ES6 模块范围

    我有代码 lib js var a a export var b b main js console log a a variable is not available in a global scope import b from lib
  • Svelte 条件元素类报告为语法错误

    我正在做一个if块每if 块的精简指南 https svelte technology guide if blocks 这看起来很简单 但 Svelte 认为这是一个语法错误 svelte plugin ParseError Unexpec
  • 从网页运行 ClickOnce 应用程序,无需用户操作

    我们有一个基于 Java 的 Web 应用程序以及用 C 编写的相同应用程序 如果 java 检查器发现客户端计算机上没有安装 Java 则应该运行该应用程序 这个想法是运行 C 单击一次 http en wikipedia org wik
  • 了解 Document.createElement()

    我在用着GWT及其底层DOM能力 我基本上想要实现的是 Have a div包含一些文本的元素 其中一些文本将被包围span元素 span 元素可相互拖动并提供上下文菜单 New span元素可以由最终用户动态创建 它可能是这样的 在应用程
  • React Redux - 在辅助函数中访问现有存储

    我试图在反应组件之外获取存储实例 存储状态 即在单独的辅助函数中 我有我的减速器 我的动作 我在最上面的组件中创建了一个商店 configStore js import createStore from redux import gener
  • 如何解决“消息端口在收到响应之前已关闭”的问题。在 JavaScript 中的 window.location.reload() 之后

    我遇到了 javascript 问题 从 chrome v73 0 3683 86 开始 每当我在 window location reload 函数之后运行 javascript 代码时 它总是给我错误 Unchecked runtime

随机推荐

  • Addthis 未加载 ajax 内容

    我试图在动态加载的内容上加载 addthis 按钮 但即使加载了脚本 addthis 工具栏也不会出现 jQuery somediv html response dynamically loaded content jQuery getSc
  • 如何使用 Msys2 和 MinGW 在 Windows 上构建 OpenLDAP 库?

    我正在尝试在 Windows 上构建 OpenLDAP 我这样做非常困难 我开始按照概述的指示进行操作here http www openldap org faq data cache 302 html 但很快意识到它已经过时了 然后我发现
  • SwiftUI中如何让SceneView的背景清晰?

    我在 SwiftUI 中显示一个 3D 对象 但在使对象的背景清晰时遇到问题 我已经搜索过 但没有找到任何解决方案 有什么解决办法吗 private var scene SCNScene SCNScene named Globe scnas
  • 如何禁用 Windows 窗体 DataGridView 中单元格文本的省略号?

    我在 NET 3 5 Visual Studio 2008 WinForms 应用程序中有一个处于只读模式的 DataGridView 细胞的宽度非常小 有些单元格包含一个短数字 现在 即使使用小字体 有时也会用省略号显示数字 例如 8 代
  • 页面加载时闪亮的提交按钮行为

    提交按钮很有用 但我还没有找到一种优雅的方法来抑制初始页面加载时的输出 例如 Shiny 教程在加载时渲染输出 http rstudio github com shiny tutorial more widgets http rstudio
  • 数组中 graphql 对象类型的 GraphQL 字段

    我在这里定义了一个 graphQL 对象 const graphql require graphql const GraphQLObjectType require graphql const ProductType new GraphQL
  • Firebase 云消息传递功能 sendToDevice 不起作用

    我使用以下代码通过 FCM 将通知从一台设备发送到另一台设备 一切正常 直到之前return admin messaging sendToDevice 令牌 ID 日志显示接收者的令牌 ID 但是当我将变量 token id 设置为 sen
  • 如何使用 jaxb.in​​dex 文件?

    我越来越 javax xml bind JAXBException org example mypackage doesnt contain ObjectFactory class or jaxb index 在尝试创建一个JAXBCont
  • 使用 git smudge/clean 替换文件内容

    我正在尝试使用 git 来管理对我的实时网站的部署 我遇到的问题是 我有几个设置文件 当我推送到生产环境时我不想更新它们 我正在做的是使用钩子或涂抹 清理来更改文件内容 例如
  • 未定义方法 PDO lastInsertId

    我有一个插入查询 我想从表中获取 ID 我一直在寻找 我找到了 PDO 的 lastInsertId 当我想使用它时 我收到 PHP 错误 这是我的代码 db new database naam db gt quoteQuery POST
  • 结果 MVC 4 处理日期、淘汰绑定

    upshot js 如何处理 DateTime 对象 看起来它只是创建 普通 字符串 而不是创建真正的 JS 日期对象 所有与 JSON 日期格式化和 MVC 相关的问题都已在此处讨论 使用 Asp Net MVC 和 KnockoutJS
  • 对于不测试其代码的开发人员,您会怎么做? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我们的一位开发人员不断地编写代码并将其放入版本控制中而不进行测试 我们的代码质量因此受到影响 除了摆脱开发商之外 我还能如何解决这个问题呢 EDIT
  • 在 Scala/akka 中记录到文件:ClassNotFoundException:akka.event.slf4j.Slf4jLoggingFilter

    我已经搜索了很多 但找不到有效的解决方案 有人可以帮我吗 akka event handlers akka event slf4j Slf4jEventHandler loggers akka event slf4j Slf4jLogger
  • .NET 4.0 中的 Assembly.LoadFrom() 权限

    我在将应用程序从 NET 3 5 迁移到 4 0 时遇到安全问题 我有一个应用程序可以从映射到 z Z MyApp App exe 的网络共享成功启动 此应用程序使用加载项 有时会要求从 Intranet 上的单独位置加载程序集 y MyL
  • “<”标记之前预期的构造函数、析构函数或类型转换

    我是 C 新手 我似乎无法弄清楚是什么导致了这些错误 以下是我的头文件 ifndef TABLE define TABLE include
  • 什么是活动内存和非活动内存[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 什么是活动记忆和非活动记忆 我正在执行命令vmstat a在 Linux 机器上 我得到以下输出 vmstat a procs memor
  • 如何将 Segment.io 服务器和客户端事件连接到同一匿名用户?

    我正在致力于在现有 NET 电子商务应用程序上实现 Segment 分析中心 以便与 Mixpanel 以及其他一些服务一起使用 我了解 Analytics js 和 Segment NET API 的 API 文档 但我很困惑如何将匿名事
  • 可以在 Google Charts 中生成该 Char 吗?

    我有一个快速的问题 可以在 Google Charts 中生成该 Char 吗 也许你知道该怎么做 有什么建议或什么 Chart1 https i stack imgur com m8tJ3 png 图表下方的白色区域非常重要 这是可能的
  • Spring WS 无效内容类型

    我有一个 Spring WS 客户端 我通过 wsimport 生成了 WSDL 存根 当我尝试发送请求时 收到无效内容类型异常 严重 SAAJ0537 内容类型无效 可能是错误消息而不是 SOAP 消息 线程 main org sprin
  • 使用 Axios 从 http 响应下载 PDF

    我正在开发一个带有 Laravel 后端 API 的 Vue 应用程序 单击链接后 我想调用服务器来下载某个文件 大多数情况下是 PDF 文件 当我做一个get请求与axios我在回复正文中收到了一份 PDF 作为回报 我想直接下载该文件