gonets/SRV/config/cors.py

31 lines
998 B
Python
Raw Permalink Normal View History

2025-06-09 14:43:25 +05:00
from fastapi import FastAPI
from starlette.middleware.cors import CORSMiddleware
class CORSMiddlewareConfig:
"""
Класс для настройки CORS политики в FastAPI
"""
2025-06-20 11:22:54 +05:00
2025-06-09 14:43:25 +05:00
def __init__(self, app: FastAPI) -> None:
2025-06-20 11:22:54 +05:00
"""Инициализируем приложение FastAPI и список допустимых CORS-оригинов"""
2025-06-09 14:43:25 +05:00
self.app = app
self.origins = [
"http://localhost.tiangolo.com",
"https://localhost.tiangolo.com",
"http://localhost",
"http://localhost:8080",
"http://localhost:5174",
"http://localhost:5173",
]
def add_cors_middleware(self) -> None:
2025-06-20 11:22:54 +05:00
"""Добавляем CORS в приложение FastAPI"""
2025-06-09 14:43:25 +05:00
self.app.add_middleware(
CORSMiddleware,
allow_origins=self.origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)