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

Параметр app

Параметр app передаётся в командах запуска и указывает, какое ASGI-приложение должен обслуживать сервер. Значением служит строка вида 'module:attribute', где module - имя Python-файла без расширения, а attribute - переменная с экземпляром FastAPI внутри него. Параметр применяется в командах fastapi dev, fastapi run и uvicorn.

Синтаксис

fastapi dev main:app
uvicorn main:app

Пример

Давайте создадим приложение в файле main.py:

from fastapi import FastAPI app = FastAPI() @app.get('/') def index(): return {'text': 'hello'}

Теперь запустим сервер, указав параметр app:

fastapi dev main:app

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

{"text": "hello"}

Пример

Давайте вынесем приложение в отдельный модуль application.py:

from fastapi import FastAPI app = FastAPI() @app.get('/user') def user(): return {'name': 'abcde'}

Теперь запустим сервер с другим именем модуля:

uvicorn application:app --reload

Результат выполнения запроса на адрес /user:

{"name": "abcde"}

Пример

Давайте используем другое имя переменной приложения в файле main.py:

from fastapi import FastAPI my_app = FastAPI() @my_app.get('/') def index(): return {'text': 'hello'}

Теперь укажем это имя в параметре app:

fastapi run main:my_app

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

{"text": "hello"}

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

  • команда fastapi dev,
    которая запускает сервер в режиме разработки
  • команда fastapi run,
    которая запускает сервер в продакшене
  • команда uvicorn,
    которая запускает ASGI-приложение напрямую
  • параметр reload,
    который перезапускает сервер при изменении кода
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить