Commit bd1e9e2f
Changed files (1)
src
openai
src/openai/_base_client.py
@@ -490,12 +490,17 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
if not files:
files = cast(HttpxRequestFiles, ForceMultipartDict())
+ prepared_url = self._prepare_url(options.url)
+ if "_" in prepared_url.host:
+ # work around https://github.com/encode/httpx/discussions/2880
+ kwargs["extensions"] = {"sni_hostname": prepared_url.host.replace("_", "-")}
+
# TODO: report this error to httpx
return self._client.build_request( # pyright: ignore[reportUnknownMemberType]
headers=headers,
timeout=self.timeout if isinstance(options.timeout, NotGiven) else options.timeout,
method=options.method,
- url=self._prepare_url(options.url),
+ url=prepared_url,
# the `Query` type that we use is incompatible with qs'
# `Params` type as it needs to be typed as `Mapping[str, object]`
# so that passing a `TypedDict` doesn't cause an error.