Re @ s d d l m Z d d l m Z d d l m Z m Z d d l m Z d Z y d d l
Z Wn e k
rp Yn Xe d 7Z e
Z d d d d d d d d
Z d d Z d
d Z d S) )absolute_import) b64encode )b
integer_types)UnrewindableBodyErrorzgzip,deflateNz,brc C s i } | rO t | t r n' t | t r? d j | } n t } | | d <| r_ | | d <| ro d | d <| r d t t | j d | d <| r d t t | j d | 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-alive
connectionzBasic zutf-8
authorizationzproxy-authorizationzno-cachez
cache-control)
isinstancestrlistjoinACCEPT_ENCODINGr r decode)
keep_aliveaccept_encoding
user_agent
basic_authproxy_basic_auth
disable_cacheheaders r /builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/urllib3/util/request.pymake_headers s* *
#
r c C si | d k r t | | nI t | d d d k re y | j } Wn t t f k
rd t } Yn X| S)z
If a position is provided, move file to that point.
Otherwise, we'll attempt to record a position for future use.
Ntell)rewind_bodygetattrr IOErrorOSError_FAILEDTELL)bodyposr r r set_file_positionZ s r# c C s t | d d } | d k re t | t re y | | Wq t t f k
ra t d Yq Xn1 | t k r t d n t d t | d S)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.) r r r r r r r
ValueErrortype)r! body_pos body_seekr r r r l s r )
__future__r base64r Zpackages.sixr r
exceptionsr r brotliZ_unused_module_brotliImportErrorobjectr r r# r r r r r