Разработка FastAPI с помощью VS Code
VS Code (полное название Visual Studio Code) — это бесплатный кроссплатформенный редактор кода с открытым исходным кодом, выпущенный Microsoft.
VS Code поддерживает Windows, macOS и Linux, обладает мощными возможностями и гибкой расширяемостью.
Руководство по VS Code:https://www.example.com/vscode/vscode-tutorial.html
URL для скачивания:https://code.visualstudio.com/ 。
Рекомендуется установить следующие расширения:
- Python (Microsoft)
- Pylance (Microsoft)
- FastAPI Snippets
Кроме того, у китайских Alibaba и ByteDance также есть AI IDE, разработанные на основе VS Code:
Создание виртуального окружения
Сначала можно настроить среду разработки Python. Если она уже установлена или настроена, этот шаг можно пропустить.
Установка FastAPI и Uvicorn
pip install fastapi uvicorn
Создание приложения FastAPI
В каталоге fastapi-demo создайтеmain.pyфайл со следующим кодом:
Пример
app = FastAPI()
@app.get("/")
async def read_root():
return {"message": "Hello, FastAPI!"}
@app.get("/items/{item_id}")
async def read_item(item_id: int, q: str = Отсутствует):
return {"item_id": item_id, "q": q}
Запустите приложение
uvicorn main:app --reload
Описание параметра:
mainИмя модуля Python (без .py)app: имя переменной экземпляра FastAPI--reload: Включить автоперезагрузку во время разработки
Доступ к API
- Откройте браузер и перейдите
http://127.0.0.1:8000 - Интерактивная документация:
http://127.0.0.1:8000/docs - Альтернативная документация:
http://127.0.0.1:8000/redoc
Советы по разработке в VS Code
В VS Code выберите в менюFile > Open Folder…и откройте папку fastapi-demo, которую вы только что создали.

При первом открытии проекта VS Code спросит: «Вы доверяете авторам этой рабочей области?» Выберите «Да, я доверяю авторам», чтобы расширения и ресурсы работали корректно.
Вы также можете использоватьcode ., чтобы открыть команду прямо в каталоге. . Символ . обозначает текущий каталог:code .
Создайте requirements.txt
Создайте новый файл (File > New Text File или сочетание клавиш⌘N), или можно сразу создать его с помощью значка нового файла справа от имени проекта:

Добавьте следующее содержимое (зависимости проекта):
fastapi redis types-redis uvicorn
Сохраните файл (⌘S) с именем requirements.txt.
Создание виртуального окружения
Создание виртуального окружения
-
Откройте палитру команд (⇧⌘P)
-
Введите и выберите:
Python: Create Environment
-
Выберите тип среды:
Venv(встроенная виртуальная среда)
-
Выберите версию Python (рекомендуется использовать последнюю версию, установленную на вашем компьютере)

-
Выбор
requirements.txtфайл для автоматической установки зависимостей
-
Нажмите Confirm, и система создаст виртуальное окружение и автоматически установит зависимости.
Далее мы можем отредактировать файл main.py:
Пример
app = FastAPI()
@app.get("/")
def root():
return {"message": "Hello World"}
Нажмите F5, чтобы запустить отладчик и выполнить код.
В появившемся раскрывающемся меню выберите из списка вариант конфигурации отладки FastAPI:

Эта операция автоматически создаст конфигурацию отладки, которая использует uvicorn для запуска сервера приложения через отладчик и позволяет пошагово выполнять исходный код, чтобы изучить его поведение.
В терминале вы должны увидеть информацию, подобную следующей:

В терминале нажмите Ctrl и щёлкните отображаемый URL-адрес http://127.0.0.1:8000/, чтобы открыть его в браузере:

Если порт по умолчанию уже занят:
- Остановить отладчик
- Откройте палитру команд (⇧⌘P), найдите и выберитеDebug: Add Configuration
- ВыберитеPython Debugger, затем выберитеFastAPI
- Это будет
.vscode/launch.jsonсоздайте в нем пользовательский файл конфигурации - В
"args":[]В него добавьте следующее содержимое, чтобы задать пользовательский порт:"args": ["--port=5000"]
Рекомендации по структуре проекта
Для больших проектов рекомендуется следующая структура:
my_fastapi_project/ ├── app/ │ ├── __init__.py │ ├── main.py # 应用入口 │ ├── api/ # API路由 │ │ ├── __init__.py │ │ ├── items.py │ │ └── users.py │ ├── models/ # 数据模型 │ │ ├── __init__.py │ │ └── user.py │ ├── schemas/ # Pydantic模型 │ │ ├── __init__.py │ │ └── user.py │ └── db/ # 数据库相关 │ ├── __init__.py │ └── session.py ├── tests/ # 测试代码 │ ├── __init__.py │ └── test_api.py ├── requirements.txt # 依赖列表 └── .env # 环境变量
Отладка и тестирование
Отладка FastAPI
В VS Code:
- Установите точку останова
- Нажмите F5, чтобы начать отладку
- Получите доступ к конечной точке API в браузере
Модульное тестирование
Использованиеpytest:
Пример
from fastapi.testclient import TestClient
from main import app
client = TestClient(app)
def test_read_root():
response = client.get("/")
assert response.status_code == 200
assert response.json() == {"message": "Hello, FastAPI!"}
Запуск тестов:
pytest
Подготовка к развертыванию
Продакшен-сервер
Рекомендуемое использование:
- Uvicorn + Gunicorn
- Hypercorn
- Daphne
Развертывание в Docker
СоздайтеDockerfile:
FROM python:3.9 WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "80"]
Сборка и запуск:
docker build -t fastapi-app . docker run -d -p 80:80 fastapi-appДругие расширения