我试图从这个链接中移植“准备好的请求”示例:https://docs.python-requests.org/en/latest/user/advanced/使用httpx AsnycClient。
from requests import Request, Session
s = Session()
req = Request('GET', url, data=data, headers=headers)
prepped = s.prepare_request(req)
# do something with prepped.body
prepped.body = 'Seriously, send exactly these bytes.'
# do something with prepped.headers
prepped.headers['Keep-Dead'] = 'parrot'
resp = s.send(prepped,
stream=stream,
verify=verify,
proxies=proxies,
cert=cert,
timeout=timeout
)
print(resp.status_code)但是,我找不到在httpx异步库中准备请求的任何方法。特别是,"prepare_request“方法似乎没有实现。
有人能告诉我如何使用AsyncClient准备请求吗?
任何暗示都是非常感谢的。
发布于 2022-05-03 17:27:59
可以使用httpx.Request类编写prepare_request工厂。
import httpx
def prepare_request(method, url, **kwargs):
# a very simple factory
return httpx.Request(method, url, **kwargs)
request = prepare_request("GET", "https://www.google.com")
client = httpx.Client()
response = client.send(request)
print(response, response.num_bytes_downloaded )仅用于演示的同步客户端
https://stackoverflow.com/questions/72060204
复制相似问题