首页 > 其他分享 >根据后端接口获取文件流下载Excel文件 分别通过GET和POST请求实现(★★★

根据后端接口获取文件流下载Excel文件 分别通过GET和POST请求实现(★★★

时间:2024-01-26 18:24:16浏览次数:24  
标签:文件 Excel xhr link blob new let POST payload

POST携带参数请求文件流并保存为Excel文件

// payload携带的对象参数
function downloadExcel(payload) {
  let xhr = new XMLHttpRequest();
  xhr.open('POST', 'background/baseInfo/export', true);
  xhr.setRequestHeader('Content-Type', 'application/json');
  xhr.responseType = 'blob';
  xhr.onload = function (e) {
    if (this.status === 200) {
      let blob = new Blob([this.response], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'});
      let link = document.createElement('a');
      link.href = window.URL.createObjectURL(blob);
      let date = moment(new Date()).format('YYYYMMDDHHmmss')
      link.download = `核查人员信息_${date}.xlsx`;
      link.click();
    }
  };
  xhr.send(JSON.stringify(payload));
}

GET携带参数请求文件流并保存为Excel文件

function downloadExcel(payload) {
    let params = convertToQueryString(payload);
    console.log('output-> params::: ', params)
    let xhr = new XMLHttpRequest();
    xhr.open('GET', 'economic/riskCheck/export' + "?" + params, true);
    xhr.responseType = 'blob';
    xhr.onload = function (e) {
        if (this.status === 200) {
            let blob = new Blob([this.response], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'});
            let link = document.createElement('a');
            link.href = window.URL.createObjectURL(blob);
            let date = moment(new Date()).format('YYYYMMDDHHmmss')
            link.download = `风险排查导出数据_${date}.xlsx`;
            link.click();
        }
    };
    xhr.send();
}

标签:文件,Excel,xhr,link,blob,new,let,POST,payload
From: https://www.cnblogs.com/openmind-ink/p/17990430

相关文章

  • 通达信【红影】今买明卖T+1超短线神器 实盘图例 主图幅图选股公式 源码文件分享
    通达信红影主图幅图选股公式今买明卖T+1超短线神器实盘图例源码文件分享某地金钻指标,原价2000哦,原公式完全加密,股海网和谐源码文件分享所谓红影,就是出现长上影线后收的红色K线,长上影线,代表有很强的资金能量拉升,收红色K线代表多大占据优势,次日大概率有冲高动能,原理非常简单,很......
  • Apipost-cli、Jenkins持续集成配置
    安装Apipost-clnpminstall-gapipost-cli运行脚本安装好Apipost-cli后,在命令行输入生成的命令,即可执行测试用例,运行完成后会展示测试进度并生成测试报告。Jenkins配置Apipostcli基于Nodejs运行需要在jenkins上配置NodeJs依赖Step1:在插件管理中安装NodeJs  在......
  • 大文件分片上传demo,前端基于Uppy,
    实现分片上传并且支持断点续传需要基于TusTus是一种开放协议,用于基于HTTP构建的可恢复上传。这意味着意外关闭选项卡或失去连接,让您继续,对于实例,您的10GB上传,而不是重新开始。后端后端变化挺大的,你需要将你的服务器变得支持Tus,刚好官方提供了对应的插件(Java后台、php后......
  • 将小游戏打包成单一exe文件的原理及应用
    哈喽大家好,我是咕噜美乐蒂,很高兴又见面啦!本文将介绍将小游戏原版文件打包成单一exe文件的原理,并探讨了这种打包方式的优点和应用场景。通过对打包工具和编译器的介绍,解释了它们如何将游戏的所有相关文件合并到一个可执行文件中,从而实现直接运行的便利性。同时,本文还提供了一些常见......
  • Excel 拖动复制公式不改变单元格的相对坐标
    Excel的公式中,如果标记了单元格的坐标。那么在拖动复制公式到其他的单元格的时候,公式里面的单元格的坐标会相对的发生变化。但是有的时候我们需要引用固定单元格上的值,不希望这些坐标发生变化,此时需要在坐标前面加‘$’号,将坐标固定,需要固定行或者列,都可以单独的在行或者列前面加......
  • jmeter 将response body内容全部导出并保存到文件
    1.使用正则表达式,获取response内容2.使用beanshell后置处理器处理并保存数据脚本:importjava.io.File;importjava.io.FileWriter;importjava.io.IOException;importorg.apache.jmeter.samplers.SampleResult;Stringseq=vars.get("seq");//使用变量获取正则......
  • 封装Excel读取,导出(实体类集合List、DataTable、DataGridView、实体类集合和DataTable
     1、引入使用 #region读取excel///<summary>///根据Excel和Sheet返回DataTable///</summary>///<paramname="filePath">Excel文件地址</param>///<paramname="sheetIndex">She......
  • Blazor Hybrid应用将非wwwroot目录下的文件加入静态资源
    以Winfrom为例,创建一个Class继承BlazorWebView这个类,重写CreateFileProvider这个方法就行。保存后,用新控件替换原来的控件,WPF,MAUI同理,但是MAUI只有Windows平台能用下面的代码。其他平台会报错,找不到文件。publicclassCustomBlazorWebView:BlazorWebView{......
  • @PostConstruct用法详解介绍
    1.@PostConstruct介绍定义:在方法上加该注解会在项目启动的时候执行该方法,也可以理解为在spring容器初始化的时候执行该方法。说明:被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Serclet的inti()方法。被@PostConstruct修饰的方法......
  • c# 数据放入excel导出,卡顿
    前言:导出数据到Excel,导出的时候特别卡顿原代码:usingSystem;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceIPC.Helper{classExcelExportUtil{publicstatic......