Проект FastAPI и первый GET
Уроки курсаПроект FastAPI и первый GET
Uvicorn: запуск, reload и остановка
Сохранённый main.py — это просто файл. Сам по себе он не слушает никакой порт и не принимает запросы. Чтобы получить работающий сервер, нужен Uvicorn.
Откройте терминал в папке fastapi-demo (там, где лежит main.py) и выполните:
.\venv\Scripts\python.exe -m uvicorn main:app --reload
На macOS/Linux:
venv/bin/python -m uvicorn main:app --reload
Если окружение активировано, достаточно:
python -m uvicorn main:app --reload
Uvicorn импортирует app из main.py и начинает слушать http://127.0.0.1:8000. В терминале появятся строки вроде:
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process
Флаг --reload заставляет Uvicorn следить за изменениями файлов. Когда вы сохраните отредактированный main.py, сервер перезапустится автоматически — перезапускать его вручную не придётся.
Терминал занят процессом сервера. Чтобы отправить запрос, откройте браузер и перейдите по адресу:
http://127.0.0.1:8000/api/rooms
Браузер покажет JSON-массив. Если нужно выполнить другие команды в терминале, откройте второй терминал — не останавливайте сервер.
Пока оставьте сервер работающим — он нужен для проверки /docs ниже. Когда закончите проверку, вернитесь в терминал с Uvicorn и нажмите Ctrl+C: сервер завершит работу, порт освободится.
