MCPcopy
hub / github.com/aio-libs/aiohttp / ClientRequest

Class ClientRequest

aiohttp/client_reqrep.py:37–513  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

35
36
37class ClientRequest:
38
39 GET_METHODS = {hdrs.METH_GET, hdrs.METH_HEAD, hdrs.METH_OPTIONS}
40 POST_METHODS = {hdrs.METH_PATCH, hdrs.METH_POST, hdrs.METH_PUT}
41 ALL_METHODS = GET_METHODS.union(POST_METHODS).union(
42 {hdrs.METH_DELETE, hdrs.METH_TRACE})
43
44 DEFAULT_HEADERS = {
45 hdrs.ACCEPT: '*/*',
46 hdrs.ACCEPT_ENCODING: 'gzip, deflate',
47 }
48
49 SERVER_SOFTWARE = HttpMessage.SERVER_SOFTWARE
50
51 body = b''
52 auth = None
53 response = None
54 response_class = None
55
56 _writer = None # async task for streaming data
57 _continue = None # waiter future for '100 Continue' response
58
59 # N.B.
60 # Adding __del__ method with self._writer closing doesn't make sense
61 # because _writer is instance method, thus it keeps a reference to self.
62 # Until writer has finished finalizer will not be called.
63
64 def __init__(self, method, url, *,
65 params=None, headers=None, skip_auto_headers=frozenset(),
66 data=None, cookies=None,
67 auth=None, encoding='utf-8',
68 version=aiohttp.HttpVersion11, compress=None,
69 chunked=None, expect100=False,
70 loop=None, response_class=None):
71
72 if loop is None:
73 loop = asyncio.get_event_loop()
74
75 self.url = url
76 self.method = method.upper()
77 self.encoding = encoding
78 self.chunked = chunked
79 self.compress = compress
80 self.loop = loop
81 self.response_class = response_class or ClientResponse
82
83 if loop.get_debug():
84 self._source_traceback = traceback.extract_stack(sys._getframe(1))
85
86 self.update_version(version)
87 self.update_host(url)
88 self.update_path(params)
89 self.update_headers(headers)
90 self.update_auto_headers(skip_auto_headers)
91 self.update_cookies(cookies)
92 self.update_content_encoding()
93 self.update_auth(auth)
94

Calls

no outgoing calls