前端代码

$("#id_pullout").click(function () {
//发送ajax请求
$.ajax({
url: '/pullout/', //请求的url
method: "post", //默认get
xhrFields: {
responseType: "arraybuffer",
},
    // 这个选项必须得有,要不文件打不开
data: {'csrfmiddlewaretoken': '{{ csrf_token }}'},
success: function (response) {
        //data接收响应体,必须要有
let blob = new Blob([response], {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        //这里。必须得指定格式,每个格式的文件都不一样
});
let link = document.createElement("a");
link.href = window.URL.createObjectURL(blob);
<!--link.download = fileName;-->
link.download = '导出数据.xlsx';
link.click();
window.URL.revokeObjectURL(link.href);
}
})
})

后端
def export_datas(request):
try:
    //  这里重新封装了reponse,
response = HttpResponse()
response['Content-Type'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
     
# todo fileName
file_time = time.strftime('%Y-%m-%d %X')
response['fileName'] = file_time+'/'+request.user.username+'.xlsx'
response['Content-Disposition'] = 'attachment;filename="{}.xlsx"'.format(file_time)
response['Accept-Encoding'] = 'gzip, deflate, br'
# print(response.get('fileName'))
outdata=BytesIO()
    // 使用IO操作,把二进制数据存起来
with open('导出文件.xlsx','rb') as f:
outdata.write(f.read())
response.write(outdata.getvalue())
     //这个啥操作没看懂说实话
return response
except Exception as e:
print([e])
return e
这个是魔改了其他大神的东西,有的地方不是很明白,但是起码能用在自己的项目上了
原文链接如下,
https://www.cnblogs.com/jun-zhou/p/16219664.html

django+ajax实现xlsx文件下载功能的更多相关文章

  1. [django]利用xlwt实现文件下载功能

    代码: url.py: url(r'^importmould/$', 'keywork.views.xls_mould', name='xls_mould'), view.py: from djang ...

  2. django+ajax用FileResponse文件下载到浏览器过程中遇到的问题

    问题: 公司的需求是从mongodb中查找数据并下载回本地,但是在将文件从mongodb通过django服务端,然后从django服务端向浏览器下载文件.但是在下载的时候出了些问题.由于是用的ajax ...

  3. JAVA文件下载功能问题解决日志

    今天给报告系统做了个下载功能,遇到了挺多问题,通过查资料一一解决了. 1.首先遇到的问题是:java后台的输出流输出之后,没有任何报错,浏览器端不弹出保存文件的对话框,原本是ajax请求到后台的con ...

  4. Django ajax MYSQL Highcharts<1>

    Another small project with django/Ajax/Mysql/Highcharts. 看下效果图  - delivery dashboard .嘿嘿 是不是还蛮好看的. 废 ...

  5. WebView实现文件下载功能

    WebView控制调用相应的WEB页面进行展示.安卓源码当碰到页面有下载链接的时候,点击上去是一点反应都没有的.原来是因为WebView默认没有开启文件下载的功能,如果要实现文件下载的功能,需要设置W ...

  6. 关于Django Ajax CSRF 认证

    CSRF(Cross-site request forgery跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的 ...

  7. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  8. Django Ajax序列化与反序列化

    序列化与反序列是最常用的功能,有时我们需要将一个表单组打包成Json格式等然后再提交给服务端,这样可以提高效率节约带框,如下是Django配合Ajax实现的序列化与反序列化,文件上传等操作. Ajax ...

  9. 解决springmvc中文件下载功能中使用javax.servlet.ServletOutputStream out = response.getOutputStream();后运行出异常但结果正确的问题

    问题描述: 在springmvc中实现文件下载功能一般都会使用javax.servlet.ServletOutputStream out = response.getOutputStream();封装 ...

  10. Ajax 生成流文件下载 以及复选框的实现

    JQuery的ajax函数的返回类型只有xml.text.json.html等类型,没有“流”类型,所以我们要实现ajax下载,不能够使用相应的ajax函数进行文件下载.但可以用js生成一个form, ...

随机推荐

  1. ElementUI实现手动上传

    在做项目中,与同事遇到问题,顺手记录一下 <template> <div class="common-layout"> <el-button size ...

  2. ZIP文件操作工具类

    2 3 import lombok.extern.slf4j.Slf4j; 4 import org.apache.commons.io.FilenameUtils; 5 6 import java. ...

  3. 2022-04-25内部群每日三题-清辉PMP

    1.项目章程批准之后,项目经理开始使用储备分析进行预算工作.哪些文件支持这项工作? A.项目资金需求.成本基准和项目储备计划 B.范围基准.风险登记册和项目进度计划 C.质量管理计划.项目资金需求和风 ...

  4. 几个Shell脚本的例子

    [例子:001]判断输入为数字,字符或其他 #!/bin/bash read -p "Enter a number or string here:" input case $inp ...

  5. 扫二维码 下载app

    <?phpheader("Access-Control-Allow-Origin: https:// ");$version = PAPI_GetSafeParam('ver ...

  6. 047_SOQL 基本查询总结

    User currentUser = [SELECT Id, Profile.Name,UserRole.Name FROM User WHERE Id = :UserInfo.getUserId() ...

  7. Cadvisor+prometheus+grafana

    部署Cadvisor [root@localhost ~]# docker run -d \ --volume=/:/rootfs:ro \ --volume=/var/run:/var/run:ro ...

  8. Linux常用指令1

    1.文件和目录的相关指令: ·cd:打开 ·pwd:查看当前所在的目录 ·mkdir:新建目录 ·rmdir:删除目录 ·ls:文件和目录查看 ·cp:复制 ·rm:删除 ·mv:移动 2.文本文件内 ...

  9. WSL2与ensp的40故障

    在使用ensp做radius认证的时候看到了Linux平台的freeradius认证服务器,于是使用了Windows平台的sub system: WSL2,按照网上的教程安装,并且安装了docker ...

  10. phpExcel常用方法详解

    phpExcel常用方法详解[附有php导出excel加超级链接] 发表于4年前(2012-07-20 12:57) 阅读(510) | 评论(0) 0人收藏此文章, 我要收藏 赞0 http://w ...