记一次用ajax下载zip打不开

             $.ajax({
                 type: 'GET',
                 url: project + "/business/attachment/getDownloadData",
                 data: { id: id },
                 responseType: 'blob', // 设置响应类型为二进制流
                 success: function(blob) {
                     // 创建一个链接
                     var url = window.URL.createObjectURL(new Blob([blob]));
            
                     // 创建一个隐藏的 <a> 元素
                     var link = document.createElement('a');
                     link.style.display = 'none';
                     link.href = url;
                     link.download = '附件.zip';
            
                     // 将链接添加到 DOM 中并模拟点击
                     document.body.appendChild(link);
                     link.click();
            
                    // 释放对象 URL
                     window.URL.revokeObjectURL(url);
                 }
             });

用ajax怎么下载都下不下来

改成

            const url = project + "/business/attachment/getDownloadData"; // 后端接口的 URL
            const params = {id: id}; // 请求参数

            const queryParams = new URLSearchParams(params).toString();
            const fullUrl = url+'?'+queryParams;

            fetch(fullUrl)
                .then(response => response.blob())
                .then(blob => {
                    const url = window.URL.createObjectURL(blob);
                    const a = document.createElement('a');
                    a.href = url;
                    a.download = '附件'+Date.now()+'.zip'; // 下载的文件名
                    a.click();
                    window.URL.revokeObjectURL(url);
                })
                .catch(error => console.error(error))
                .finally(()=>$('#dg').datagrid('loaded'));

完美解决  但是我不知道为什么  有没有大佬解答

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值