Как в 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

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

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