直击PHP使用ajax的post方式下载excel文件简单示例

直击PHP使用ajax的post方式下载excel文件简单示例

本文实例讲述了PHP使用ajaxpost方式下载excel文件。分享给大家供大家参考,具体如下:

项目需求,前端发起ajax请求,后端生成excel并下载,同时需要在header头中,带上token验证信息,参考了很多文章,最终实现如下:

PHP后端使用base64:

$filename = 'demo.xlsx';
$objWriter = \\PHPExcel_IOFactory::createWriter($objectPHPExcel, 'Excel2007');
ob_start();
$objWriter->save("php://output");
$xlsData = ob_get_contents();
ob_end_clean();
return Api::success(['filename' => $filename, 'file' => "data:application/vnd.ms-excel;base64," . base64_encode($xlsData)]);

JS前端:

$('.download').click(function(){
    var url = "http://xxxx.com/group/bi/export";
    var params = {
      from_date: '2017-09-01',
      to_date: '2017-09-08',
      group_id: 1
    };
    $.ajax({
      type:'POST',
      url: url,
      data: params,
      beforeSend: function(request) {
        request.setRequestHeader("Authorization", "token信息,验证身份");
      },
      success: function(redata) {
        // 创建a标签,设置属性,并触发点击下载
        var $a = $("<a>");
        $a.attr("href", redata.data.file);
        $a.attr("download", redata.data.filename);
        $("body").append($a);
        $a[0].click();
        $a.remove();
      }
    });
});

关于直击PHP使用ajax的post方式下载excel文件简单示例的文章就分享到这,如果对你有帮助欢迎继续关注我们哦

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/40752.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
php学习php学习订阅用户
上一篇 2022年6月15日 23:51
下一篇 2022年6月15日 23:51

相关推荐

  • PHP商城开发中施行前后端分离的最佳实践

    随着商业进程的不断加速,网络购物成为了大众消费的一种主流方式。而随着网络购物平台的不断出现,也催生了各种各样的电商系统,其中最常见的就是PHP商城系统。然而,PHP商城系统的开发与维护并不是一项轻松的工作…

    2023年5月19日
    01
  • 微信小程序中PHP实现单选、多选和复选框的实现方法。

    随着微信小程序的日益普及,越来越多的开发者开始关注微信小程序的开发。微信小程序作为一种全新的开发模式,在实现不同功能上需要不同的技术方案。其中,实现单选、多选和复选框是微信小程序开发者经常会面临的一…

    2023年6月3日
    02
  • PHP中的人工智能。

    随着人工智能的发展,越来越多的领域开始尝试将其应用于实际生产和生活中。而在计算机领域中,PHP语言也开始向人工智能方向发展。本文将介绍PHP中人工智能的应用及其未来发展趋势。一、PHP的人工智能应用PHP作为一…

    2023年5月28日
    01
  • PHP中的HTTP请求和响应头。

    在Web开发中,HTTP请求和响应头是非常重要的概念。它们提供了在客户端和服务器之间传输数据的标准化机制。PHP作为一门流行的Web编程语言,自然也支持HTTP请求和响应。HTTP请求头是客户端(例如浏览器)发送给服务器…

    2023年5月28日
    05
  • PHP对象--object

    对象--object 说明:世间万物皆为“对象”; 在PHP中的对象是由类创建来的。 如:女娲造人-泥巴 类:模具 Class people{ //属性 $name; $sex; $age; $header; $footer; //方法--行为 Function zou(){ Echo ‘走’; } } /…

    2017年11月21日
    0221
  • PHP8中的数组函数:array_key_first()和array_key_last()的高效应用技巧。

    在PHP8中,引入了两个新的数组函数:array_key_first()和array_key_last()。这两个函数的作用是返回数组的第一个键值和最后一个键值。它们的引入,旨在优化PHP数组的性能,尤其是在大型数组上。本篇文章将介绍如何…

    2023年5月21日
    00
  • 经验分享宝塔面板 php。

    宝塔面板是一款方便的服务器管理工具,支持多种语言,包括PHP。它可以帮助用户轻松管理服务器、网站和数据库,提高运维效率。 宝塔面板轻松部署PHP项目完善解决困扰多年的问题 在互联网时代,越来越多的人开始接触…

    2024年7月6日
    00
  • PHP的表单处理。

    PHP是一种流行的编程语言,用于构建现代Web应用程序。在Web开发中,表单处理是不可避免的一部分。PHP提供了处理表单的内置功能。在本文中,我们将介绍如何使用PHP处理表单。首先,我们需要了解表单的基本结构。HTML…

    2023年5月28日
    00

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息