Excel скачать с Flask-RestPlus?

Как реализовать конечную точку API для загрузки файла Excel с помощью Flask-RestPlus?

Ранее я реализовал аналогичную функцию с помощью Pyramid. Однако этот метод не работал здесь. Вот старый фрагмент кода:

workBook = openpyxl.Workbook()
fileName = 'Report.xls'
response = Response(content_type='application/vnd.ms-excel',
                            content_disposition='attachment; filename=%s' % fileName)
workBook.save(response)
return response

Спасибо за помощь.

0 ответов

send_from_directory обеспечивает безопасный способ быстрого доступа к статическим файлам из папки загрузки или чего-то подобного при использовании Flask-RestPlus

from flask import send_from_directory
import os

@api.route('/download')
class Download(Resource):
    def get(self):
        fileName = 'Report.xls'
        return send_from_directory(os.getcwd(), fileName, as_attachment=True)

Я предположил, что файл находится в текущем рабочем каталоге. Соответственно можно изменить путь для загрузки файла.

Другие вопросы по тегам