直击PHP使用ajax的post方式下载excel文件简单示例
导读:收集整理的这篇文章主要介绍了直击PHP使用ajax的post方式下载excel文件简单示例,觉得挺不错的,现在分享给大家,也给大家做个参考。本文实例讲述了PHP使用ajax的post方式下载excel文件。分享给大家供大家参考,具体如下:项...
收集整理的这篇文章主要介绍了直击PHP使用ajax的post方式下载excel文件简单示例,觉得挺不错的,现在分享给大家,也给大家做个参考。本文实例讲述了PHP使用ajax的post方式下载excel文件。分享给大家供大家参考,具体如下:
项目需求,前端发起ajax请求,后端生成excel并下载,同时需要在header头中,带上token验证信息,参考了很多文章,最终实现如下:
相关学习推荐:PHP编程(视频)
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文件简单示例的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 直击PHP使用ajax的post方式下载excel文件简单示例
本文地址: https://pptw.com/jishu/596649.html
