Python生成并下載文件后端代碼實例
txt文件
生成并下載txt文件:
@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 文件:
@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
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
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關文章:
1. Python實現(xiàn)迪杰斯特拉算法過程解析2. 基于Android FileProvider 屬性配置詳解及FileProvider多節(jié)點問題3. 詳解Python模塊化編程與裝飾器4. Spring security 自定義過濾器實現(xiàn)Json參數(shù)傳遞并兼容表單參數(shù)(實例代碼)5. Python如何進行時間處理6. 詳解java中static關鍵詞的作用7. JavaScript實現(xiàn)頁面動態(tài)驗證碼的實現(xiàn)示例8. JavaScript中的AOP編程的基本實現(xiàn)9. python使用ctypes庫調用DLL動態(tài)鏈接庫10. python裝飾器三種裝飾模式的簡單分析
