mirror of
https://github.com/open-webui/open-webui.git
synced 2026-11-13 09:11:19 +00:00
14 lines
537 B
Python
14 lines
537 B
Python
import urllib.parse
|
|
|
|
|
|
def normalize_oauth_metadata(metadata: dict, metadata_url: str) -> dict:
|
|
normalized = dict(metadata)
|
|
parsed_url = urllib.parse.urlparse(metadata_url)
|
|
origin = f'{parsed_url.scheme}://{parsed_url.netloc}'
|
|
normalized.setdefault('issuer', origin)
|
|
|
|
for field, value in normalized.items():
|
|
if isinstance(value, str) and (field == 'issuer' or field.endswith('_endpoint') or field == 'jwks_uri'):
|
|
normalized[field] = urllib.parse.urljoin(f'{origin}/', value)
|
|
|
|
return normalized
|