Python Klein-如何以附件形式返回Excel文件?

问题描述 投票:0回答:1

我将Python Klein用于我的小型API。可以返回csv作为响应,但是可以返回Excel文件吗? Flask具有此功能,但是Klein呢?

任务:

在硬盘驱动器上具有Excel文件,并希望将其作为附件返回,因此用户可以通过API调用下载它。

示例:使用csv文件,一切正常,如

   @app.route('/download/',  branch=True, methods=['GET'])
   def download(request):
       request.setHeader("Access-Control-Allow-Origin", "*")
       request.setHeader('Content-Type', 'text/csv')
       request.setHeader('Content-Disposition', 'attachment; filename=test.csv')
       file = open('test.csv', "r")
       csv_data = file.read() 
       return csv_data

但是如何处理Excel文件?

python excel klein-mvc
1个回答
0
投票

找到的解决方案:

from twisted.web.static import File
from klein import Klein
app = Klein()
@app.route('/', branch=True)
def pg_index(request):
    request.setHeader("Access-Control-Allow-Origin", "*")
    request.setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
    request.setHeader('Content-Disposition', 'attachment; filename=test.xlsx'.format(list_id))
    return File('./test.xlsx')
© www.soinside.com 2019 - 2024. All rights reserved.