MCPcopy Create free account
hub / github.com/OpenRouterTeam/python-sdk / _parse_basic_auth_scheme

Function _parse_basic_auth_scheme

src/openrouter/utils/security.py:191–215  ·  view source on GitHub ↗
(headers: Dict[str, str], scheme: Any)

Source from the content-addressed store, hash-verified

189
190
191def _parse_basic_auth_scheme(headers: Dict[str, str], scheme: Any):
192 username = ""
193 password = ""
194
195 if not isinstance(scheme, BaseModel):
196 raise TypeError("basic auth scheme must be a pydantic model")
197
198 scheme_fields: Dict[str, FieldInfo] = scheme.__class__.model_fields
199 for name in scheme_fields:
200 scheme_field = scheme_fields[name]
201
202 metadata = find_field_metadata(scheme_field, SecurityMetadata)
203 if metadata is None or metadata.field_name is None:
204 continue
205
206 field_name = metadata.field_name
207 value = getattr(scheme, name)
208
209 if field_name == "username":
210 username = value
211 if field_name == "password":
212 password = value
213
214 data = f"{username}:{password}".encode()
215 headers["Authorization"] = f"Basic {base64.b64encode(data).decode()}"

Callers 2

_parse_security_optionFunction · 0.85
_parse_security_schemeFunction · 0.85

Calls 1

find_field_metadataFunction · 0.85

Tested by

no test coverage detected