РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
461 of 643 menu

Функция send_file

Функция send_file применяется внутри функции-обработчика и отправляет клиенту файл с диска. Первым параметром передаётся путь к файлу. Вторым параметром можно передать mimetype для указания типа содержимого. Третьим параметром as_attachment можно указать, скачивать файл или отображать в браузере. Параметр download_name задаёт имя файла при скачивании.

Синтаксис

send_file(path, mimetype=None, as_attachment=False, download_name=None)

Пример

Давайте отдадим клиенту текстовый файл 'data.txt' с типом 'text/plain':

from flask import Flask, send_file app = Flask(__name__) @app.route('/') def index(): return send_file('data.txt', mimetype='text/plain')

Результат выполнения кода:

abcde

Пример

Давайте отдадим файл 'data.txt' как вложение для скачивания с именем 'article.txt':

from flask import Flask, send_file app = Flask(__name__) @app.route('/') def index(): return send_file( 'data.txt', as_attachment=True, download_name='article.txt' )

Результат выполнения кода:

"файл article.txt скачивается"

Пример

Давайте отдадим файл, путь к которому построен через os.path.join относительно текущей директории:

import os from flask import Flask, send_file app = Flask(__name__) @app.route('/') def index(): path = os.path.join(app.root_path, 'data.txt') return send_file(path, mimetype='text/plain')

Результат выполнения кода:

abcde

Смотрите также

  • функцию send_from_directory,
    которая безопасно отдаёт файл из директории
  • функцию secure_filename,
    которая очищает имя файла от опасных символов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить