Python生成并下载文件后端代码实例
txt文件
生成并下载txt文件:
@app.route('/download',methods=['GET']) defdownload(): content="longtext" response=make_response(content) response.headers["Content-Disposition"]="attachment; filename=myfilename.txt" returnresponse
运行app.py后,在浏览器中输入:http://127.0.0.1:5000/download,直接下载txt文件。
excel文件
生成并下载excel文件:
@app.route("/export",methods=['GET']) defexport(): out=BytesIO() workbook=xlsxwriter.Workbook(out) table=workbook.add_worksheet() table.write(0,0,"第1列") table.write(0,1,"第2列") table.write(0,2,"第3列") table.write(0,0,"name") table.write(1,1,"sex") table.write(2,2,"class") workbook.close() out.seek(0) filename=quote("Entity类下载.xlsx") rv=send_file(out,as_attachment=True,attachment_filename=filename) rv.headers['Content-Disposition']+=";filename*=utf-8''{}".format(filename) returnrv
运行app.py后,在浏览器中输入:http://127.0.0.1:5000/export,可以直接下载excel文件。
前后端分离时,接口返回时要注意headers
defexportExcel(): workbook=xlwt.Workbook(encoding='utf-8') wSheet=workbook.add_sheet("Plan") titleFont=xlwt.Font() f=BytesIO() workbook.save(f) f.seek(0) filename=quote(saveFile)#将单个字符串编码转化为%xx%xx的形式 rv=send_file(f,as_attachment=True,attachment_filename=filename) rv.headers['Content-Disposition']+=";filename*=utf-8''{}".format(filename) rv.headers['Cache-Control']='no-store'#重点在这句!!!!!!!!!!!!!!!!! returnrv
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。