From 3615ae8d3bc8b15f50431341fb40356e051cfe61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Y=C3=BBki=20Vachot?= Date: Fri, 14 Jan 2022 01:35:50 +0100 Subject: [PATCH] Update: Cors Origin from Docker Environments --- backend/application/routes.py | 6 +++++- backend/config.py | 2 +- docker-compose.yml | 5 +++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/backend/application/routes.py b/backend/application/routes.py index 661623c..728eede 100644 --- a/backend/application/routes.py +++ b/backend/application/routes.py @@ -1,3 +1,4 @@ +from flask import current_app as app from flask import request, Blueprint from flask_cors import CORS from werkzeug.exceptions import HTTPException @@ -7,7 +8,10 @@ from .api_functions import db_login, db_register, db_user_update, db_create_log, from .sessionJWT import create_auth_token, check_auth_token bp = Blueprint('myapp', __name__) -CORS(bp, supports_credentials=True, origins=['http://127.0.0.1:4200', 'http://localhost:4200']) +origin = app.config.get('ALLOW_ORIGIN') +if origin is None: + origin = ['http://127.0.0.1:4200', 'http://localhost:4200'] +CORS(bp, supports_credentials=True, origins=origin) @bp.app_errorhandler(HTTPException) diff --git a/backend/config.py b/backend/config.py index 9de0dd3..ae0e613 100644 --- a/backend/config.py +++ b/backend/config.py @@ -21,7 +21,7 @@ class Config(object): } SECRET_KEY = os.environ.get('SECRET_KEY', 'default_secret_key') - ALLOW_ORIGIN = os.environ.get('ALLOW_ORIGIN', '*') + ALLOW_ORIGIN = os.environ.get('ALLOW_ORIGIN', None) class ProductionConfig(Config): diff --git a/docker-compose.yml b/docker-compose.yml index 739fe46..2db4f87 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -51,8 +51,9 @@ services: - PYTHONUNBUFFERED=1 - DATABASE_URL_USERS=postgresql://flaskaled1:aled1@flaskaled-srv1/flaskaledDb1 - DATABASE_URL_LOGS=postgresql://flaskaled2:aled2@flaskaled-srv2/flaskaledDb2 - #SECRET_KEY: default_secret_key - #- ALLOW_ORIGIN=frontend + - ALLOW_ORIGIN=frontend + - SECRET_KEY=default_secret_key + # frontend: # container_name: frontend