fix: add retry_after attribute to KworkRateLimitError
This commit is contained in:
parent
f397769ce0
commit
a02bc910f1
@ -131,16 +131,26 @@ class KworkRateLimitError(KworkApiError):
|
||||
Возникает при слишком частых запросах к API.
|
||||
Рекомендуется сделать паузу перед повторным запросом.
|
||||
|
||||
Attributes:
|
||||
retry_after: Время ожидания в секундах (если указано сервером).
|
||||
|
||||
Example:
|
||||
import asyncio
|
||||
|
||||
try:
|
||||
await client.catalog.get_list()
|
||||
except KworkRateLimitError:
|
||||
await asyncio.sleep(5) # Пауза 5 секунд
|
||||
except KworkRateLimitError as e:
|
||||
wait_time = e.retry_after or 5
|
||||
await asyncio.sleep(wait_time)
|
||||
"""
|
||||
|
||||
def __init__(self, message: str = "Rate limit exceeded", response: Optional[Any] = None):
|
||||
def __init__(
|
||||
self,
|
||||
message: str = "Rate limit exceeded",
|
||||
response: Optional[Any] = None,
|
||||
retry_after: Optional[int] = None,
|
||||
):
|
||||
self.retry_after = retry_after
|
||||
super().__init__(message, 429, response)
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user