博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Django】Django 文件下载最佳实践
阅读量:6272 次
发布时间:2019-06-22

本文共 985 字,大约阅读时间需要 3 分钟。

代码:

from django.http import StreamingHttpResponsedef big_file_download(request):    # do something...    def file_iterator(file_name, chunk_size=512):        with open(file_name) as f:            while True:                c = f.read(chunk_size)                if c:                    yield c                else:                    break    the_file_name = "big_file.pdf"    response = StreamingHttpResponse(file_iterator(the_file_name))    response['Content-Type'] = 'application/octet-stream'    response['Content-Disposition'] = 'attachment;filename="{0}"'.format(the_file_name)    return response

 

 

参考资料:

http://www.jianshu.com/p/2ce715671340

http://blog.csdn.net/martin_liang/article/details/43286539

http://zhidao.baidu.com/link?url=l2plQ2oAU0A-SJzEH-OwWsLVciU91XlQwMmn3qrXhHkY9XRDFeSv09YAfQpVKZbrmKzOSFLgtA3mGmtTTjgGzJHzMI7u9WpdozQFwxq0fNW

http://www.python88.com/topic/126/

 

推荐:

http://www.cnblogs.com/linxiyue/p/4187484.html

http://blog.sina.com.cn/s/blog_90bc5fc60102vl7m.html

 

你可能感兴趣的文章
java 图片等比压缩
查看>>
Oracle 创建普通用户,并赋予权限
查看>>
我的友情链接
查看>>
android工程目录结构,及相关文件获取方式(1)
查看>>
Vsftpd内网映射相关原理及配置
查看>>
Linux非对称路由
查看>>
在iOS 8中使用UIAlertController
查看>>
第2课:通过案例对SparkStreaming 透彻理解三板斧之二:解密SparkStreaming运行机制和架构...
查看>>
IOS开发—App 在 IOS 8 的simulator运行时,定位卡死bug解决
查看>>
windows 密钥登陆 linux
查看>>
IOS 录制视频
查看>>
limit检查
查看>>
Android Things 简介
查看>>
菜鸟学Linux 第049篇笔记 DNS log, zone, view
查看>>
菜鸟学Linux 第054篇笔记 建立加密的http
查看>>
ListView 的多选模式
查看>>
宏正自动科技发表新款8/16端口双滑轨LCD KVM多电脑切换器
查看>>
解决 Missing GL version
查看>>
VS 编译链接错误集锦
查看>>
Dns域名服务器之,ACL ,转发域及子域授权的基本配置
查看>>