一、正常情况下,我们都如此下载文件并修改文件名,在a标签上面添加download属性

var link = document.createElement('a');

link.href = file.url;

link.download = file.name;

link.target="_blank";

link.click();

由于a.download跨域会失效,上面代码只可同域实现

二、通过blob实现跨域下载并修改文件名

点击时调用如下方法

function load(file) {this.getBlob(file.url).then(blob =>{this.saveAs(blob, file.name);

});

},

//通过文件下载url拿到对应的blob对象

getBlob(url) {return new Promise(resolve =>{const xhr = newXMLHttpRequest();

xhr.open('GET', url, true);

xhr.responseType= 'blob';

xhr.οnlοad= () =>{if (xhr.status === 200) {

resolve(xhr.response);

}

};

xhr.send();

});

},

//下载文件

saveAs(blob, filename) {

var link = document.createElement('a');

link.href = window.URL.createObjectURL(blob);

link.download = filename;

link.click();

}

————————————————

版权声明:本文为CSDN博主「cici-99」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/pqj222/java/article/details/102628834

java 跨域 下载文件_文件下载重命名(可跨域)相关推荐

  1. java从url下载文件_从URL下载Java文件

    java从url下载文件 Today we will learn how to download a file from URL in java. We can use java.net.URL op ...

  2. 文件下载重命名(跨域)

    一.正常情况下,我们都如此下载文件并修改文件名,在a标签上面添加download属性 var link = document.createElement('a'); link.href = file. ...

  3. Java 多线程断点下载文件_详解

    本文转载于:http://blog.csdn.net/ibm_hoojo/article/details/6838222 基本原理:利用URLConnection获取要下载文件的长度.头部等相关信息, ...

  4. java中浏览器下载文件_浏览器下载java项目中的文件

    有一些文件保存在项目中需要在浏览器打开的页面中下载,需要找准文件的存储路径 工程格式 2.代码 public String execute() throws Exception { HttpServl ...

  5. java aws s3 下载文件_使用send_file从Amazon S3下载文件?

    为用户保持简单 我认为处理此问题的最佳方法是使用过期的S3网址 . 其他方法有以下问题: 文件首先下载到服务器,然后下载到用户 . 使用 send_data 不会产生预期的"browser ...

  6. Java实现FTP下载文件到客户端(浏览器)

    目录 一.简介 二.maven依赖 三.配置类 四.工具类 4.1.服务器文件名中文处理 4.2.下载文件名中文处理 五.接口验证 一.简介   我在之前的文章(Java实现文件上传和下载)里讲过非F ...

  7. 【踩坑】Linux java中ftp下载文件,解压文件损坏,以及图片下载打开只显示下载路径的问题

    [踩坑]Linux java中ftp下载文件,解压文件损坏,以及图片下载打开只显示下载路径的问题 一. 问题重现 二. 问题解决思路 1. 确认是不是上传就导致数据出错了 2. 是不是平台问题 三. ...

  8. java ftp获取文件夹大小,java 用FTPClient 下载文件时不显示总大小?解决方案

    java 用FTPClient 下载文件时不显示总大小? FTPClient ftp = new FTPClient(); ftp.setControlEncoding("utf-8&quo ...

  9. [CentOs7]搭建ftp服务器(3)——上传,下载,删除,重命名,新建文件夹

    摘要 上篇文章介绍了如何为ftp添加虚拟用户,本篇将继续实践如何上传,下载文件. 上传 使用xftp客户端上传文件,如图所示 此时上传状态报错,查看详情 从错误看出是应为无法创建文件造成的.那么我们就 ...

最新文章

  1. Java程序执行Linux命令调用EasyPR程序识别车牌号
  2. 使用PostBackUrl与Server.Transfer传递数据
  3. 树 森林 二叉树 遍历
  4. curl下载失败返回0_curl返回常见错误码
  5. python 打开文件,读取文件内容
  6. 元组类型与列表类型的操作函数和方法
  7. VTK:IO之ConvertFile
  8. linux测试怎样看,linux入门篇:如何查看centos版本
  9. 加入域--深入理解DNS在域中作用
  10. Modelsim仿真tcl脚本与wave.do文件
  11. 几维安全Javascript代码混淆(js加密)在线使用说明
  12. python pow函数用法_Python代码中pow()函数具有哪些功能呢?
  13. git 存在多个commit 时将修改,追加到某次commit 上
  14. access 分表存储_数据库分区、分表、分库、分片
  15. 《Spring揭秘》读后感
  16. 中国移动MM7 API用户手册(一)
  17. 洛谷P2122 还教室
  18. 计算机睡眠和休眠哪个更好,详解电脑睡眠和休眠的区别
  19. dev c++缺省源
  20. 通过写《费用明细表》发现写sql的乐趣

热门文章

  1. SpringBoot 集成 MyBatisPlus 模板
  2. RabbitMQ 普通集群配置_04
  3. RabbitMQ 下载、安装、配置、验证_rpm版本(Linux环境)
  4. 工作流实战_19_flowable 任务委派
  5. MyBatis-Plus_更新操作
  6. Git Windows安装手册
  7. 超详细前端开发案例:品优购商场项目(三)
  8. 小程序开发(6)-之自定义导航栏
  9. 逻辑回归预测事件发生的概率_通过逻辑回归,对信用卡申请数据使用卡方分箱法预测违约率建模...
  10. 彻底卸载acer软件保护卡_宏碁(Acer)传奇 14英寸 新一代7nm六核处理器 真香机 高性能宏基笔记本电脑(R5-4500U 7纳米 16G 512GSSD )...