博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django文件下载(通过反向解析)
阅读量:4646 次
发布时间:2019-06-09

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

Django文件下载(通过反向解析)

首先配一个路由

url(r'^download/(.*)', views.download,name='download_file'),

在HTML中添加需要下载的文件标签

下载文件  

在视图层

# 文件下载def download(request,data): # 通过反向解析获取data文件名        file_path = os.path.join(os.getcwd(), data) # 拼接文件在服务端的真实路径    # 下载文件(固定格式)    ext = os.path.basename(file_path).split('.')[-1].lower()    # 不让客户下载的文件路径    if ext not in ['py', 'db', 'sqlite3']:        response = FileResponse(open(file_path, 'rb'))        response['content_type'] = "application/octet-stream"        response['Content-Disposition'] = 'attachment; filename=' + 'dow_name' # 下载的文件名        return response  # 返回文件流    else:        raise Http404

总结:

下载文件中遇到的问题:刚开始准备使用post方式请求,post方式有两种,form表单和ajax方式,使用form表单会在每次下载完后刷新页面,不可选取,使用ajax方式,最后发现,ajax不能下载文件流,所以只能选用get方式下载文件。

转载于:https://www.cnblogs.com/tyler-bog/p/11001448.html

你可能感兴趣的文章
网络表示学习总结
查看>>
完成评论功能
查看>>
far和near
查看>>
Python爬虫实战四之抓取淘宝MM照片
查看>>
2015 Multi-University Training Contest 1
查看>>
C#判断一个字符串是否是数字或者含有某个数字
查看>>
SVN使用指南
查看>>
【转载】掌 握 3 C ‧ 迎 接 亮 丽 职 涯
查看>>
爬取网站附件
查看>>
java基础图形界面和IO系统
查看>>
javascript学习笔记
查看>>
hdu 3996
查看>>
python第三十九课——面向对象(二)之初始化属性
查看>>
python学习笔记之函数装饰器
查看>>
FEM计算2D瞬态热传导方程
查看>>
四年时光,匆匆而过
查看>>
【php】【psr】psr1 基础编码规范
查看>>
WAF SSI
查看>>
LDAP & it's implementation
查看>>
Apache HttpComponents中的cookie匹配策略
查看>>