Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про FastAPI: middleware, fast api, cors, http

Как в FastAPI обрабатывать междоменные запросы (CORS)?

Вопрос проверяет знание обработки междоменных запросов с использованием CORS в FastAPI.

Короткий ответ

Для обработки междоменных запросов FastAPI предоставляет встроенное средство CORSMiddleware. Оно позволяет настроить правила, определяющие, какие домены могут отправлять запросы к вашему API.

Длинный ответ

CORS (Cross-Origin Resource Sharing) — это механизм, позволяющий серверу указывать, какие домены могут взаимодействовать с его API. Это особенно важно для защиты от несанкционированного доступа.
В FastAPI настройка CORS выполняется через встроенное промежуточное ПО CORSMiddleware. Вы можете указать список разрешенных доменов, методы HTTP и заголовки, которые сервер принимает.

Пример настройки CORS:

from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware

app = FastAPI()

origins = ["http://localhost", "http://localhost:3000"]

app.add_middleware(
    	CORSMiddleware,
    	allow_origins=origins,  # Список разрешенных доменов
    	allow_credentials=True,
    	allow_methods=["*"],  # Разрешенные методы (GET, POST и т.д.)
    	allow_headers=["*"],  # Разрешенные заголовки
)

@app.get("/")
def read_root():
    	return {"message": "CORS configured"}

Когда использовать:

  • Настройка CORS необходима, если ваше API используется с веб-клиентами, размещенными на другом домене. Это особенно важно для SPA-приложений и клиент-серверных архитектур.

Уровень

  • Рейтинг:

    3

  • Сложность:

    7

Навыки

  • FastAPI

    FastAPI

Ключевые слова

#middleware

#fast api

#cors

#http

Подпишись на Python Developer в телеграм