javascript - 使用 MS Edge 下载 Excel 文件

标签 javascript excel download microsoft-edge

我的应用程序从数据库提取中创建服务器端的 Excel 文件。

post 请求将参数发送到服务器,然后服务器使用这些参数来查询数据库。

服务器使用这些参数提取数据,将数据转换为 Excel 文件(xlsx),然后根据发送到服务器的参数以特定文件名保存该文件。

服务器通过将文件名发送到浏览器来响应 post 请求。

然后,浏览器使用文件名和其他预定义参数创建一个链接,以按照以下说明下载文件:

var link = 'http://host-name/path-to-file/excel-file.xlxs'; // the link that is created by the js in the browser
window.location = link; // the file is downloaded

这适用于 chrome、firefox、opera 和 safari,在这些浏览器中,文件下载没有问题。

但是;在 Microsoft-edge 中运行时,不会下载该文件,并且该文件会显示在页面中。

enter image description here

最佳答案

有人在某些版本的 IE 中遇到类似问题,必须设置 Cache-Control header 才能使下载正常工作:

response.Cache.SetCacheability(HttpCacheability.Private);

Source

关于javascript - 使用 MS Edge 下载 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51135458/

相关文章:

C#模仿Excel SLOPE函数

php - 如何将不同类型的文件上传到 SQL,然后使用 PHP 检索它们以供下载

javascript - jQuery:有条件地显示基于下拉框选择的元素

JavaScript:从字符串中的数字添加或减去

excel - 打印变量的名称

php - 在 Amazon S3 上使用 php 强制下载

java - 使用 Spring Boot 和 Thymeleaf 创建文件下载链接

javascript - 智能电视后台应用

javascript - 如何更改满足特定条件的数组的两个连续值?

excel - 如何从范围中选择随机单元格?