From 3b1871d591873594bb4aa8dc17a1253b3a7563a3 Mon Sep 17 00:00:00 2001 From: "kevin.zhang" Date: Tue, 9 Apr 2024 09:30:59 +0800 Subject: [PATCH] feat: enable cors to allow play video through mounted videos url --- app/asgi.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/asgi.py b/app/asgi.py index 440e4c0..d21a724 100644 --- a/app/asgi.py +++ b/app/asgi.py @@ -1,10 +1,12 @@ """Application implementation - ASGI.""" +import os from fastapi import FastAPI, Request from fastapi.exceptions import RequestValidationError from fastapi.responses import JSONResponse from loguru import logger from fastapi.staticfiles import StaticFiles +from fastapi.middleware.cors import CORSMiddleware from app.config import config from app.models.exception import HttpException @@ -47,6 +49,17 @@ def get_application() -> FastAPI: app = get_application() +# Configures the CORS middleware for the FastAPI app +cors_allowed_origins_str = os.getenv("CORS_ALLOWED_ORIGINS", "") +origins = cors_allowed_origins_str.split(",") if cors_allowed_origins_str else ["*"] +app.add_middleware( + CORSMiddleware, + allow_origins=origins, + allow_credentials=True, + allow_methods=["*"], + allow_headers=["*"], +) + task_dir = utils.task_dir() app.mount("/tasks", StaticFiles(directory=task_dir, html=True, follow_symlink=True), name="")