codekingpro/portable-devtools
115k
1from httpx import Request2 3HTTPX_CLIENT_KWARGS = [4 'headers', 'cookies', 'verify', 'cert', 'http1', 'http2',5 'proxies', 'timeout', 'follow_redirects', 'limits', 'max_redirects',6 'event_hooks', 'base_url', 'transport', 'app', 'trust_env',7]8 9 10def extract_client_kwargs(kwargs):11 client_kwargs = {}12 for k in HTTPX_CLIENT_KWARGS:13 if k in kwargs:14 client_kwargs[k] = kwargs.pop(k)15 return client_kwargs16 17 18def build_request(url, headers, body, initial_request: Request) -> Request:19 """Make sure that all the data from initial request is passed to the updated object"""20 updated_request = Request(21 method=initial_request.method,22 url=url,23 headers=headers,24 content=body25 )26 27 if hasattr(initial_request, 'extensions'):28 updated_request.extensions = initial_request.extensions29 30 return updated_request31 