txt文件
1
2
3
4
5
6
7
|
@app .route( '/download' , methods = [ 'GET' ])
def download():
content = "long text"
response = make_response(content)
response.headers[ "Content-Disposition" ] = "attachment;
filename = myfilename.txt"
return response
|
运行app.py后,在浏览器中输入:http://127.0.0.1:5000/download,直接下载txt文件。
excel 文件
生成并下载excel 文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
@app .route( "/export" ,methods = [ 'GET' ])
def export():
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)
return rv
|
运行app.py后,在浏览器中输入:http://127.0.0.1:5000/export,可以直接下载excel文件。
前后端分离时,接口返回时要注意headers
1
2
3
4
5
6
7
8
9
10
11
12
|
def exportExcel():
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' # 重点在这句!!!!!!!!!!!!!!!!!
return rv
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/Grouth-Diary/p/13518247.html