diff --git a/backend/app/core/config.py b/backend/app/core/config.py index 464aa9d..2a4e9fd 100644 --- a/backend/app/core/config.py +++ b/backend/app/core/config.py @@ -38,6 +38,13 @@ class Settings(BaseSettings): list[AnyUrl] | str, BeforeValidator(parse_cors) ] = [] + @computed_field # type: ignore[prop-decorator] + @property + def all_cors_origins(self) -> list[str]: + return [str(origin).rstrip("/") for origin in self.BACKEND_CORS_ORIGINS] + [ + self.FRONTEND_HOST + ] + PROJECT_NAME: str SENTRY_DSN: HttpUrl | None = None POSTGRES_SERVER: str diff --git a/backend/app/main.py b/backend/app/main.py index 4c252a1..9a95801 100644 --- a/backend/app/main.py +++ b/backend/app/main.py @@ -21,12 +21,10 @@ app = FastAPI( ) # Set all CORS enabled origins -if settings.BACKEND_CORS_ORIGINS: +if settings.all_cors_origins: app.add_middleware( CORSMiddleware, - allow_origins=[ - str(origin).strip("/") for origin in settings.BACKEND_CORS_ORIGINS - ], + allow_origins=settings.all_cors_origins, allow_credentials=True, allow_methods=["*"], allow_headers=["*"],