Атрибут headers
Атрибут headers применяется к объекту FileStorage, который возвращается при загрузке файла через форму. Он предоставляет доступ к объекту Headers, содержащему метаданные запроса, такие как тип контента, длина контента и другие заголовки, переданные браузером. Это позволяет получить дополнительную информацию о загруженном файле без необходимости читать его содержимое.
Атрибут не принимает параметров и доступен только для чтения. Возвращаемый объект ведёт себя как словарь, но с регистронезависимыми ключами.
Синтаксис
file_storage.headers
Пример
Давайте создадим приложение, которое принимает файл и выводит все его заголовки:
from flask import Flask, request
app = Flask(__name__)
@app.route('/upload', methods=['POST'])
def upload():
file = request.files['file']
return dict(file.headers)
Результат выполнения кода для загруженного файла:
{'Content-Disposition': 'form-data; name="file"; filename="test.txt"', 'Content-Type': 'text/plain'}
Пример
Давайте получим конкретный заголовок, например, тип контента:
from flask import Flask, request
app = Flask(__name__)
@app.route('/upload', methods=['POST'])
def upload():
file = request.files['file']
return file.headers.get('Content-Type')
Результат выполнения кода для текстового файла:
"text/plain"
Пример
Давайте проверим наличие определённого заголовка в запросе:
from flask import Flask, request
app = Flask(__name__)
@app.route('/upload', methods=['POST'])
def upload():
file = request.files['file']
if 'Content-Length' in file.headers:
return 'Length header present'
return 'Length header missing'
Результат выполнения кода при наличии заголовка:
"Length header present"
Смотрите также
-
класс
FileStorage,
который представляет загруженный файл -
атрибут
content_type,
который возвращает MIME-тип файла -
атрибут
content_length,
который возвращает размер файла в байтах -
атрибут
filename,
который возвращает имя загруженного файла