OpenQuizz
Une application de gestion des contenus pédagogiques
ProxyManager Class Reference
Inheritance diagram for ProxyManager:
Collaboration diagram for ProxyManager:

Public Member Functions

def __init__ (self, proxy_url, num_pools=10, headers=None, proxy_headers=None, proxy_ssl_context=None, use_forwarding_for_https=False, **connection_pool_kw)
 
def connection_from_host (self, host, port=None, scheme="http", pool_kwargs=None)
 
def urlopen (self, method, url, redirect=True, **kw)
 
- Public Member Functions inherited from PoolManager
def __init__ (self, num_pools=10, headers=None, **connection_pool_kw)
 
def __enter__ (self)
 
def __exit__ (self, exc_type, exc_val, exc_tb)
 
def clear (self)
 
def connection_from_context (self, request_context)
 
def connection_from_pool_key (self, pool_key, request_context=None)
 
def connection_from_url (self, url, pool_kwargs=None)
 
- Public Member Functions inherited from RequestMethods
def __init__ (self, headers=None)
 
def urlopen (self, method, url, body=None, headers=None, encode_multipart=True, multipart_boundary=None, **kw)
 
def request (self, method, url, fields=None, headers=None, **urlopen_kw)
 
def request_encode_url (self, method, url, fields=None, headers=None, **urlopen_kw)
 
def request_encode_body (self, method, url, fields=None, headers=None, encode_multipart=True, multipart_boundary=None, **urlopen_kw)
 

Data Fields

 proxy
 
 proxy_headers
 
 proxy_ssl_context
 
 proxy_config
 
- Data Fields inherited from PoolManager
 connection_pool_kw
 
 pools
 
 pool_classes_by_scheme
 
 key_fn_by_scheme
 
- Data Fields inherited from RequestMethods
 headers
 

Additional Inherited Members

- Static Public Attributes inherited from PoolManager
 proxy
 
 proxy_config
 

Detailed Description

Behaves just like :class:`PoolManager`, but sends all requests through
the defined proxy, using the CONNECT method for HTTPS URLs.

:param proxy_url:
    The URL of the proxy to be used.

:param proxy_headers:
    A dictionary containing headers that will be sent to the proxy. In case
    of HTTP they are being sent with each request, while in the
    HTTPS/CONNECT case they are sent only once. Could be used for proxy
    authentication.

:param proxy_ssl_context:
    The proxy SSL context is used to establish the TLS connection to the
    proxy when using HTTPS proxies.

:param use_forwarding_for_https:
    (Defaults to False) If set to True will forward requests to the HTTPS
    proxy to be made on behalf of the client instead of creating a TLS
    tunnel via the CONNECT method. **Enabling this flag means that request
    and response headers and content will be visible from the HTTPS proxy**
    whereas tunneling keeps request and response headers and content
    private.  IP address, target hostname, SNI, and port are always visible
    to an HTTPS proxy even when this flag is disabled.

Example:
    >>> proxy = urllib3.ProxyManager('http://localhost:3128/')
    >>> r1 = proxy.request('GET', 'http://google.com/')
    >>> r2 = proxy.request('GET', 'http://httpbin.org/')
    >>> len(proxy.pools)
    1
    >>> r3 = proxy.request('GET', 'https://httpbin.org/')
    >>> r4 = proxy.request('GET', 'https://twitter.com/')
    >>> len(proxy.pools)
    3

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
  proxy_url,
  num_pools = 10,
  headers = None,
  proxy_headers = None,
  proxy_ssl_context = None,
  use_forwarding_for_https = False,
**  connection_pool_kw 
)

Member Function Documentation

◆ connection_from_host()

def connection_from_host (   self,
  host,
  port = None,
  scheme = "http",
  pool_kwargs = None 
)
Get a :class:`urllib3.connectionpool.ConnectionPool` based on the host, port, and scheme.

If ``port`` isn't given, it will be derived from the ``scheme`` using
``urllib3.connectionpool.port_by_scheme``. If ``pool_kwargs`` is
provided, it is merged with the instance's ``connection_pool_kw``
variable and used to create the new connection pool, if one is
needed.

Reimplemented from PoolManager.

◆ urlopen()

def urlopen (   self,
  method,
  url,
  redirect = True,
**  kw 
)
Same as :meth:`urllib3.HTTPConnectionPool.urlopen`
with custom cross-host redirect logic and only sends the request-uri
portion of the ``url``.

The given ``url`` parameter must be absolute, such that an appropriate
:class:`urllib3.connectionpool.ConnectionPool` can be chosen for it.

Reimplemented from PoolManager.

Field Documentation

◆ proxy

proxy

◆ proxy_config

proxy_config

◆ proxy_headers

proxy_headers

◆ proxy_ssl_context

proxy_ssl_context

The documentation for this class was generated from the following file: