重试失败的lowhaio http请求的包装器
lowhaio-retr的Python项目详细描述
lowhaio重试
重试失败的包装器lowhaioHTTP请求允许从失败的http请求重试异常。
安装
pip install lowhaio_retry
用法
从lowhaio.Pool
返回的request
函数必须用lowhaio_retry.retry
包装,如下例所示这将重试请求,等待指定的重试间隔。如果请求仍然失败,最后的异常将被冒泡到客户端代码中
所以不是像这样的请求
fromlowhaioimportPoolrequest,_=Pool()body=...code,headers,body=awaitrequest(b'PUT','https://example.com/path',body=body,headers=((b'content-length',b'1234'),),)
你可以写
fromlowhaioimportPool,HttpConnectionError,HttpDataErrorfromlowhaio_retryimportretryrequest,_=Pool()retriable_request=retry(request,exception_intervals=(# Seconds to wait after each exception(HttpConnectionError,(0,0,0)),(HttpDataError,(0,1,2,4)),),)body=...code,headers,body=awaitretriable_request(b'PUT','https://example.com/path',body=body,headers=((b'content-length',b'1234'),),)