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

Метод wsgi_app

Метод wsgi_app применяется к приложению Flask и представляет собой точку входа для WSGI-сервера. Первым параметром передаётся окружение WSGI environ, вторым - функция start_response для отправки заголовков ответа. Метод возвращает итерируемый объект с телом ответа. Обычно этот метод вызывается самим WSGI-сервером, а не разработчиком напрямую.

Синтаксис

app.wsgi_app(environ, start_response)

Пример

Давайте создадим приложение Flask и вызовем метод wsgi_app вручную, передав ему окружение и функцию start_response:

from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'hello' environ = { 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_NAME': 'localhost', 'SERVER_PORT': '5000', 'wsgi.url_scheme': 'http', } def start_response(status, headers): print(status) res = app.wsgi_app(environ, start_response) print(list(res))

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

200 OK [b'hello']

Пример

Давайте обработаем маршрут с параметром через метод wsgi_app и получим тело ответа:

from flask import Flask app = Flask(__name__) @app.route('/user/<name>') def user(name): return name environ = { 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/user/abcde', 'SERVER_NAME': 'localhost', 'SERVER_PORT': '5000', 'wsgi.url_scheme': 'http', } def start_response(status, headers): print(status) res = app.wsgi_app(environ, start_response) print(list(res))

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

200 OK [b'abcde']

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

  • класс Flask,
    который представляет приложение Flask
  • метод run,
    который запускает сервер разработки
  • метод request_context,
    который создаёт контекст запроса
  • метод test_client,
    который создаёт клиент для тестирования приложения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить