@api.route('/file/down') def excel_down(): directory = r'D:/' filename = 'www.rar' file_name = '測試.rar' response = make_response(send_from_directory(directory, filename, as_attachment=True)) response.headers["Content-Disposition"] = "attachment; filename={}".format(file_name) return response
yield做用是後臺生成一部分數據,前臺下載一部分,不是等到所有傳輸完再進行下載,減小耗時javascript
@api.route('/stream/down') def stream_down(): def generate(): for row in range(50000): line = [] for col in range(500): line.append(str(col)) if row % 1000 == 0: print 'row: %d' % row yield ','.join(line) + '\n' response = Response(generate(), mimetype='text/csv') response.headers["Content-Disposition"] = "attachment; filename={}".format('大文件.csv') return response
@api.route('/test3') def test3(): from openpyxl import Workbook wb = Workbook() ws = wb.active ws['A1'] = 42 ws['B1'] = "你\n好" + "automation test" file_name = 'test.xlsx' wb.save(file_name) directory = '' response = make_response(send_from_directory(directory, file_name, as_attachment=True)) response.headers["Content-Disposition"] = "attachment; filename={}".format(file_name) return response
window.open(PreURL+'test3') //window.open寫在連接中的參數後臺用get方法就能取到
text/html(默認的,html文件)css
text/plain(純文本)html
text/css(css文件)java
text/javascript(js文件)nginx
application/x-www-form-urlencoded(普通的表單提交)json
multipart/form-data(文件提交)flask
application/json(json傳輸)api
application/xml(xml文件)app
Flask 文件和流post