js通过window.open(url)下载文件并修改文件名

 更新时间:2023年08月14日 10:51:52   作者:大大。  
这篇文章主要给大家介绍了关于js如何通过window.open(url)下载文件并修改文件名的相关资料,我们知道下载文件是一个非常常见的需求,文中通过代码介绍的非常详细,需要的朋友可以参考下

通过window.open(url)下载文件(xlsx、xls、zip等格式文件),如果前端想要自定义更改下载时的文件名,可以使用以下方法

// 下载文件,自定义文件名称
export function downFile(url, fileName) {
  const x = new XMLHttpRequest()
  x.open('GET', url, true)
  x.responseType = 'blob'
  x.onload = function() {
    const url = window.URL.createObjectURL(x.response)
    const a = document.createElement('a')
    a.href = url
    a.download = fileName
    a.click()
  }
  x.send()
}

在页面调用

downFile('url', '自定义文件名')

附:window.open打开窗口被拦截的快速解决方法

自己遇到的使用window.open打开新窗口被拦截的几种情况(使用的chrome浏览器,其他浏览器未测):

第一次:window.open(www.gimoo.net),打开了新窗口,但是页面并没有加载出来,需要回车才能出来

解决方法:页面地址需要加上协议名称http://或者https://

第二次:在ajax异步请求成功的回调函数中使用window.open方法,虽然加上了协议名称,但是,却并没有打开新窗口,在地址栏直接显示 被拦截 的字样

解决方法:有两种:

1、将ajax异步请求改为同步请求

2、使用 var newWindow = window.open("_blank");newWindow .location = "url地址";

总结 

到此这篇关于js通过window.open(url)下载文件并修改文件名的文章就介绍到这了,更多相关js window.open(url)下载文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现

    javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现

    首先来说,我对游戏开发可以算是不怎么深入,因为现在的程序员爱用canvas,我却就只会拿几个div凑和。不过没关系,因为做出来的同样是游戏。哈!废话最近有点多,感兴趣的朋友可以了解下
    2013-01-01
  • prettify 代码高亮着色器google出品

    prettify 代码高亮着色器google出品

    prettify是Google提供的一款源代码语法高亮着色器,它提供一种简单的形式来着色HTML页面上的程序代码,最值得亮点的地方是不需要指明代码的语言类型,它会自动进行判断。
    2010-12-12
  • JavaScript实现无限轮播效果

    JavaScript实现无限轮播效果

    这篇文章主要介为大家详细绍了JavaScript实现无限轮播效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • 纯javascript实现简单下拉刷新功能

    纯javascript实现简单下拉刷新功能

    这篇文章主要介绍了纯javascript实现简单下拉刷新功能,没有借助任何的框架,十分简单实用,有需要的小伙伴来参考下吧。
    2015-03-03
  • JS实现简易的图片拖拽排序实例代码

    JS实现简易的图片拖拽排序实例代码

    这篇文章主要介绍了JS实现简易的图片拖拽排序实例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • JS实现搜索框文字可删除功能

    JS实现搜索框文字可删除功能

    本文给大家分享一段js代码实现搜索框文字可删除功能,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2016-12-12
  • JS常用的4种截取字符串方法

    JS常用的4种截取字符串方法

    在做项目的时候,经常会需要截取字符串,所以常用的方法有slice()、substr()、substring()、match()方法等,下面通过示例代码介绍四个方法的使用,感兴趣的朋友跟随小编一起看看吧
    2023-02-02
  • javascript自定义右键菜单插件

    javascript自定义右键菜单插件

    这篇文章主要为大家详细介绍了javascript自定义右键菜单插件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • JavaScript 验证浏览器是否支持javascript的方法小结

    JavaScript 验证浏览器是否支持javascript的方法小结

    一些网站只有客户端js的验证,这样就给一些hacher一些可趁之机了,不信大家测试一些网站的注册功能看看,有部分网站只有客户端验证,我为了达到客户端验证,先是判断浏览器是否支持js,如果不支持,提示信息,然后屏蔽掉发送按钮
    2009-05-05
  • JavaScript快速排序(quickSort)算法的实现方法总结

    JavaScript快速排序(quickSort)算法的实现方法总结

    快速排序的思想式 分治法,选一个基准点,然后根据大小进行分配,分配然完毕之后,对已经分配的进行递归操作,最终形成快速排序,所以递归也是快速排序思想的一个重要组成部分,本文主要给大家介绍了JavaScript实现快速排序的写法,需要的朋友可以参考下
    2023-11-11

最新评论