Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib/python3.5/site-packages/urllib3/util/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib/python3.5/site-packages/urllib3/util/__pycache__/request.cpython-35.pyc



[y�@s�ddlmZddlmZddlmZmZddlmZdZ	e
�Zdddddddd	�Zd
d�Z
dd
�ZdS)�)�absolute_import)�	b64encode�)�b�
integer_types)�UnrewindableBodyErrorzgzip,deflateNcCs�i}|rOt|t�rn't|t�r?dj|�}nt}||d<|r_||d<|rod|d<|r�dtt|��jd�|d<|r�dtt|��jd�|d	<|r�d
|d<|S)a
    Shortcuts for generating request headers.

    :param keep_alive:
        If ``True``, adds 'connection: keep-alive' header.

    :param accept_encoding:
        Can be a boolean, list, or string.
        ``True`` translates to 'gzip,deflate'.
        List will get joined by comma.
        String will be used as provided.

    :param user_agent:
        String representing the user-agent you want, such as
        "python-urllib3/0.6"

    :param basic_auth:
        Colon-separated username:password string for 'authorization: basic ...'
        auth header.

    :param proxy_basic_auth:
        Colon-separated username:password string for 'proxy-authorization: basic ...'
        auth header.

    :param disable_cache:
        If ``True``, adds 'cache-control: no-cache' header.

    Example::

        >>> make_headers(keep_alive=True, user_agent="Batman/1.0")
        {'connection': 'keep-alive', 'user-agent': 'Batman/1.0'}
        >>> make_headers(accept_encoding=True)
        {'accept-encoding': 'gzip,deflate'}
    �,zaccept-encodingz
user-agentz
keep-aliveZ
connectionzBasic zutf-8Z
authorizationzproxy-authorizationzno-cachez
cache-control)�
isinstance�str�list�join�ACCEPT_ENCODINGrr�decode)Z
keep_aliveZaccept_encodingZ
user_agentZ
basic_authZproxy_basic_authZ
disable_cache�headers�r�E/opt/alt/python35/lib/python3.5/site-packages/urllib3/util/request.py�make_headerss*$


  
rcCsi|dk	rt||�nIt|dd�dk	rey|j�}Wnttfk
rdt}YnX|S)z
    If a position is provided, move file to that point.
    Otherwise, we'll attempt to record a position for future use.
    N�tell)�rewind_body�getattrr�IOError�OSError�_FAILEDTELL)�body�posrrr�set_file_positionMsrcCs�t|dd�}|dk	ret|t�rey||�Wq�ttfk
ratd��Yq�Xn1|tkr�td��ntdt|���dS)z�
    Attempt to rewind body to a certain position.
    Primarily used for request redirects and retries.

    :param body:
        File-like object that supports seek.

    :param int pos:
        Position to seek to in file.
    �seekNzAAn error occurred when rewinding request body for redirect/retry.zRUnable to record file position for rewinding request body during a redirect/retry.z4body_pos must be of type integer, instead it was %s.)	rr	rrrrr�
ValueError�type)rZbody_posZ	body_seekrrrr_sr)�
__future__r�base64rZpackages.sixrr�
exceptionsrr
�objectrrrrrrrr�<module>s		A