vue使用js-file-download插件下载文件乱码的解决

 更新时间:2024年07月18日 10:49:52   作者:宝藏程序员  
这篇文章主要介绍了vue使用js-file-download插件下载文件乱码的解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

使用js-file-download插件下载文件乱码

在开发vue项目时遇到使用js-file-download插件下载后端传过来的二进制文件流时报错。

像这样:

解决方法

在默认情况下vue的axios的responseType默认时json,如果接收的时文件流就可能会造成乱码或者null,我们只需在axios的请求头中加入responseType:'blob'即可解决问题。

vue通过url下载文件,保留文件名不乱码

技术名词解释

下载文件方法封装

技术细节

本方法适用在后台没有提供下载接口,前台直接用a标签下载,文件名是文件服务器加密后的乱码。

解决下载后文件名乱码问题,保持原文件名。

直接新建download.js,把封装好的代码复制进去即可。

export async function downloadFile(url, fileName) {
  try {
    const res = await fetch(url)
    const blob = await res.blob()
    const a = document.createElement('a')
    const objectURL = URL.createObjectURL(blob)

    a.href = objectURL
    a.download = fileName
    a.click()

    URL.revokeObjectURL(objectURL)
  } catch (error) {
    console.error('Error occurred while handling file           download:', error)
  }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue中使用svg-icon遇到的坑及解决

    vue中使用svg-icon遇到的坑及解决

    这篇文章主要介绍了vue中使用svg-icon遇到的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Vue2.0 $set()的正确使用详解

    Vue2.0 $set()的正确使用详解

    这篇文章主要介绍了Vue2.0 $set()的正确使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • tomcat部署前端vue项目步骤(项目上线具体操作)

    tomcat部署前端vue项目步骤(项目上线具体操作)

    在实际开发中,我们经常会遇到将Vue项目部署到Tomcat服务器上的需求,下面这篇文章主要给大家介绍了关于tomcat部署前端vue项目(项目上线具体操作)的相关资料,需要的朋友可以参考下
    2024-07-07
  • Vue插槽slot全部使用方法示例解析

    Vue插槽slot全部使用方法示例解析

    插槽就是子组件中的提供给父组件使用的一个占位符,用<slot></slot> 表示,父组件可以在这个占位符中填充任何模板代码,如 HTML、组件等,填充的内容会替换子组件的<slot></slot>标签,这篇文章主要介绍了Vue插槽的理解和使用,需要的朋友可以参考下
    2023-03-03
  • 利用Vue实现将图片转换为Base64编码的方法

    利用Vue实现将图片转换为Base64编码的方法

    这篇文章主要介绍了利用Vue实现将图片转换为Base64编码的方法,Base64是一种编码方式,用于将二进制数据转换成64个基于ASCII的可打印字符,这种编码可嵌入图像到HTML或CSS中,减少加载时间,解决跨域问题,并支持离线应用开发,需要的朋友可以参考下
    2024-10-10
  • Vuepress生成文档部署到gitee.io的注意事项及说明

    Vuepress生成文档部署到gitee.io的注意事项及说明

    这篇文章主要介绍了Vuepress生成文档部署到gitee.io的注意事项及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • Vue实现用户登录及token验证

    Vue实现用户登录及token验证

    这篇文章主要为大家详细介绍了Vue实现用户登录及token验证,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 解决vue prop传值default属性如何使用,为何不生效的问题

    解决vue prop传值default属性如何使用,为何不生效的问题

    这篇文章主要介绍了解决vue prop传值default属性如何使用,为何不生效的问题。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • 如何利用Vue3+Vite批量导入模块/资源

    如何利用Vue3+Vite批量导入模块/资源

    这篇文章主要给大家介绍了关于如何利用Vue3+Vite批量导入模块/资源的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-03-03
  • vue-jsonp的使用及说明

    vue-jsonp的使用及说明

    这篇文章主要介绍了vue-jsonp的使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12

最新评论