Метод test_request_context
Метод test_request_context применяется к приложению Flask и создаёт контекст запроса, который позволяет работать с объектом request и другими переменными контекста вне обработчика маршрута. Первым параметром передаётся путь URL, вторым - метод HTTP, а дополнительными параметрами можно передать данные формы, JSON или заголовки. Метод часто используется в тестах и в интерактивной оболочке.
Синтаксис
app.test_request_context(path, [method], [data], [json], [headers])
Пример
Давайте создадим контекст запроса и выведем путь URL:
from flask import Flask, request
app = Flask(__name__)
with app.test_request_context('/'):
print(request.path)
Результат выполнения кода:
"/"
Пример
Давайте передадим данные формы и получим их через объект request:
from flask import Flask, request
app = Flask(__name__)
with app.test_request_context('/user', method='POST', data={'name': 'abcde'}):
print(request.form['name'])
Результат выполнения кода:
"abcde"
Смотрите также
-
метод
request_context,
который создаёт контекст запроса из окружения WSGI -
метод
app_context,
который создаёт контекст приложения -
метод
test_client,
который создаёт тестовый клиент для запросов -
класс
Flask,
который представляет приложение Flask