Home / Function/ _urllib3_request_context() — requests Function Reference

_urllib3_request_context() — requests Function Reference

Architecture documentation for the _urllib3_request_context() function in adapters.py from the requests codebase.

Entity Profile

Dependency Diagram

graph TD
  989cb094_bf00_56e8_7848_2b8a03832cbc["_urllib3_request_context()"]
  8cafec3a_816a_3b74_357a_0167321e5d19["adapters.py"]
  989cb094_bf00_56e8_7848_2b8a03832cbc -->|defined in| 8cafec3a_816a_3b74_357a_0167321e5d19
  9e25d4cd_58ba_4762_6222_2cc3ce1b67bb["build_connection_pool_key_attributes()"]
  9e25d4cd_58ba_4762_6222_2cc3ce1b67bb -->|calls| 989cb094_bf00_56e8_7848_2b8a03832cbc
  style 989cb094_bf00_56e8_7848_2b8a03832cbc fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

src/requests/adapters.py lines 78–112

def _urllib3_request_context(
    request: "PreparedRequest",
    verify: "bool | str | None",
    client_cert: "tuple[str, str] | str | None",
    poolmanager: "PoolManager",
) -> "(dict[str, typing.Any], dict[str, typing.Any])":
    host_params = {}
    pool_kwargs = {}
    parsed_request_url = urlparse(request.url)
    scheme = parsed_request_url.scheme.lower()
    port = parsed_request_url.port

    cert_reqs = "CERT_REQUIRED"
    if verify is False:
        cert_reqs = "CERT_NONE"
    elif isinstance(verify, str):
        if not os.path.isdir(verify):
            pool_kwargs["ca_certs"] = verify
        else:
            pool_kwargs["ca_cert_dir"] = verify
    pool_kwargs["cert_reqs"] = cert_reqs
    if client_cert is not None:
        if isinstance(client_cert, tuple) and len(client_cert) == 2:
            pool_kwargs["cert_file"] = client_cert[0]
            pool_kwargs["key_file"] = client_cert[1]
        else:
            # According to our docs, we allow users to specify just the client
            # cert path
            pool_kwargs["cert_file"] = client_cert
    host_params = {
        "scheme": scheme,
        "host": parsed_request_url.hostname,
        "port": port,
    }
    return host_params, pool_kwargs

Domain

Subdomains

Frequently Asked Questions

What does _urllib3_request_context() do?
_urllib3_request_context() is a function in the requests codebase, defined in src/requests/adapters.py.
Where is _urllib3_request_context() defined?
_urllib3_request_context() is defined in src/requests/adapters.py at line 78.
What calls _urllib3_request_context()?
_urllib3_request_context() is called by 1 function(s): build_connection_pool_key_attributes.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free