Files
nexium-web/app/util/redirect.py
2026-08-02 17:55:21 +00:00

21 lines
492 B
Python

from urllib.parse import urlparse
from flask import request
def safe_redirect(fallback_url: str = "/", referrer_url: str = None) -> str:
if referrer_url is None:
referrer_url = request.referrer
if not referrer_url:
return fallback_url
try:
parsed_referrer = urlparse(referrer_url)
if parsed_referrer.netloc and parsed_referrer.netloc == request.host:
return referrer_url
except Exception:
pass
return fallback_url