fix: format code for better readability and add CORS handling for OPTIONS requests
All checks were successful
CI / test (3.11) (push) Successful in 8s
CI / build-image (push) Successful in 46s

This commit is contained in:
2025-10-30 13:06:08 +01:00
parent 6763fd802c
commit b5a0817760

View File

@@ -44,7 +44,8 @@ def register_request_hooks(app: Flask) -> None:
@app.after_request @app.after_request
def add_request_id_header(response): # type: ignore[unused-ignore] def add_request_id_header(response): # type: ignore[unused-ignore]
try: try:
rid = getattr(request, "request_id", None) or request.environ.get("HTTP_X_REQUEST_ID") rid = getattr(request, "request_id", None) or request.environ.get(
"HTTP_X_REQUEST_ID")
if rid: if rid:
response.headers["X-Request-Id"] = rid response.headers["X-Request-Id"] = rid
@@ -62,7 +63,27 @@ def register_request_hooks(app: Flask) -> None:
pass pass
start_time = getattr(g, "_start_time", None) start_time = getattr(g, "_start_time", None)
observe_request(request.method, request.path, start_time, response.status_code) observe_request(request.method, request.path,
start_time, response.status_code)
except Exception: except Exception:
pass pass
return response return response
@app.after_request
def add_cors_headers(response): # type: ignore[unused-ignore]
# Add CORS headers for embedded forms
if request.path.startswith("/api/"):
response.headers["Access-Control-Allow-Origin"] = "*"
response.headers["Access-Control-Allow-Methods"] = "GET, POST, PUT, DELETE, OPTIONS"
response.headers["Access-Control-Allow-Headers"] = "Content-Type, Authorization"
return response
@app.before_request
def handle_options(): # type: ignore[unused-ignore]
if request.method == "OPTIONS":
response = app.response_class()
response.headers["Access-Control-Allow-Origin"] = "*"
response.headers["Access-Control-Allow-Methods"] = "GET, POST, PUT, DELETE, OPTIONS"
response.headers["Access-Control-Allow-Headers"] = "Content-Type, Authorization"
return response