pub struct RateLimit<K: KeyExtractor> { /* private fields */ }Expand description
Rate-limiting middleware factory — mirrors actix_governor::Governor.
Implementations§
Source§impl<K: KeyExtractor> RateLimit<K>
impl<K: KeyExtractor> RateLimit<K>
Sourcepub fn new(config: &RateLimiterConfig<K>) -> Self
pub fn new(config: &RateLimiterConfig<K>) -> Self
Create a new middleware factory from a shared RateLimiterConfig.
Trait Implementations§
Source§impl<S, B, K> Transform<S, ServiceRequest> for RateLimit<K>where
K: KeyExtractor,
S: Service<ServiceRequest, Response = ServiceResponse<B>, Error = Error> + 'static,
B: MessageBody + 'static,
impl<S, B, K> Transform<S, ServiceRequest> for RateLimit<K>where
K: KeyExtractor,
S: Service<ServiceRequest, Response = ServiceResponse<B>, Error = Error> + 'static,
B: MessageBody + 'static,
Source§type Response = ServiceResponse<EitherBody<B>>
type Response = ServiceResponse<EitherBody<B>>
Responses produced by the service.
Source§type Transform = RateLimitMiddleware<S, K>
type Transform = RateLimitMiddleware<S, K>
The
TransformService value created by this factorySource§type Future = Ready<Result<<RateLimit<K> as Transform<S, ServiceRequest>>::Transform, <RateLimit<K> as Transform<S, ServiceRequest>>::InitError>>
type Future = Ready<Result<<RateLimit<K> as Transform<S, ServiceRequest>>::Transform, <RateLimit<K> as Transform<S, ServiceRequest>>::InitError>>
The future response value.
Source§fn new_transform(&self, service: S) -> Self::Future
fn new_transform(&self, service: S) -> Self::Future
Creates and returns a new Transform component, asynchronously
Auto Trait Implementations§
impl<K> !RefUnwindSafe for RateLimit<K>
impl<K> !UnwindSafe for RateLimit<K>
impl<K> Freeze for RateLimit<K>where
K: Freeze,
impl<K> Send for RateLimit<K>where
K: Send,
impl<K> Sync for RateLimit<K>where
K: Sync,
impl<K> Unpin for RateLimit<K>where
K: Unpin,
impl<K> UnsafeUnpin for RateLimit<K>where
K: UnsafeUnpin,
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