From 166e5736ca4d644260832a4a2009804092a56fef Mon Sep 17 00:00:00 2001 From: av1m <36456709+av1m@users.noreply.github.com> Date: Sun, 11 Sep 2022 13:38:30 +0200 Subject: [PATCH] add score in OPTIONS --- flask_sustainable/__init__.py | 2 +- flask_sustainable/extension.py | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/flask_sustainable/__init__.py b/flask_sustainable/__init__.py index 6d8f5b3..0d617cd 100644 --- a/flask_sustainable/__init__.py +++ b/flask_sustainable/__init__.py @@ -4,5 +4,5 @@ from .extension import Sustainable -__version__ = "0.0.2" +__version__ = "0.0.3" __all__ = ["Sustainable"] diff --git a/flask_sustainable/extension.py b/flask_sustainable/extension.py index b10d687..f01f85e 100644 --- a/flask_sustainable/extension.py +++ b/flask_sustainable/extension.py @@ -15,7 +15,7 @@ import flask -from flask_sustainable.base import BaseIndicator, BaseScore +from flask_sustainable.base import BaseHeader, BaseIndicator, BaseScore from flask_sustainable.compress import Compression logger = logging.getLogger(__name__) @@ -90,14 +90,19 @@ def after_request(self, response: flask.Response) -> flask.Response: except TypeError as error: logger.warning("Error while compressing the response") logger.exception(error) + # Retrieve all registered headers + registered: list[BaseHeader] = [ + *self._registered_indicators, + *self._registered_scores, + ] # Add allowed headers if flask.request.method == "OPTIONS": - headers = [x.name for x in self._registered_indicators] + headers = [x.name for x in registered] response.headers.extend( {"Access-Control-Allow-Headers": ", ".join(headers)} ) # Run after_request on all registered headers - for header in [*self._registered_indicators, *self._registered_scores]: + for header in registered: if header.should_use(): header.after_request(response=response) return response