pub struct RateLimitedClient { /* private fields */ }Expand description
An HTTP client that optionally enforces rate limiting on every request.
Implementations§
Source§impl RateLimitedClient
impl RateLimitedClient
Sourcepub fn with_rate_limit(requests_per_minute: u32) -> Self
pub fn with_rate_limit(requests_per_minute: u32) -> Self
Create a new client with the given requests-per-minute limit.
Sourcepub fn from_client(client: Client, requests_per_minute: Option<u32>) -> Self
pub fn from_client(client: Client, requests_per_minute: Option<u32>) -> Self
Create from an existing reqwest::Client, adding a rate limiter.
Sourcepub async fn get(&self, url: &str) -> RequestBuilder
pub async fn get(&self, url: &str) -> RequestBuilder
Build a GET request, waiting for rate-limit clearance first.
Sourcepub async fn post(&self, url: &str) -> RequestBuilder
pub async fn post(&self, url: &str) -> RequestBuilder
Build a POST request, waiting for rate-limit clearance first.
Sourcepub fn available_tokens(&self) -> Option<u32>
pub fn available_tokens(&self) -> Option<u32>
Get the current number of available tokens (for diagnostics).
Returns None if no rate limiter is configured.
Trait Implementations§
Source§impl Clone for RateLimitedClient
impl Clone for RateLimitedClient
Source§fn clone(&self) -> RateLimitedClient
fn clone(&self) -> RateLimitedClient
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RateLimitedClient
impl Debug for RateLimitedClient
Auto Trait Implementations§
impl Freeze for RateLimitedClient
impl !RefUnwindSafe for RateLimitedClient
impl Send for RateLimitedClient
impl Sync for RateLimitedClient
impl Unpin for RateLimitedClient
impl UnsafeUnpin for RateLimitedClient
impl !UnwindSafe for RateLimitedClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more