pub struct RateLimitMiddleware { /* private fields */ }Expand description
Rate limiting middleware
Implementations§
Source§impl RateLimitMiddleware
 
impl RateLimitMiddleware
pub fn new(config: SecurityConfig) -> Self
Trait Implementations§
Source§impl EnhancedMiddleware for RateLimitMiddleware
 
impl EnhancedMiddleware for RateLimitMiddleware
Source§fn before_request<'life0, 'life1, 'async_trait>(
    &'life0 self,
    request: &'life1 mut Request,
) -> Pin<Box<dyn Future<Output = Result<Option<Response>>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
 
fn before_request<'life0, 'life1, 'async_trait>(
    &'life0 self,
    request: &'life1 mut Request,
) -> Pin<Box<dyn Future<Output = Result<Option<Response>>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
Process a request before it reaches the handler
Source§fn after_response<'life0, 'life1, 'async_trait>(
    &'life0 self,
    _response: &'life1 mut Response,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
 
fn after_response<'life0, 'life1, 'async_trait>(
    &'life0 self,
    _response: &'life1 mut Response,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
Process a response after the handler
Source§fn is_enabled(&self) -> bool
 
fn is_enabled(&self) -> bool
Check if middleware is enabled
Auto Trait Implementations§
impl Freeze for RateLimitMiddleware
impl RefUnwindSafe for RateLimitMiddleware
impl Send for RateLimitMiddleware
impl Sync for RateLimitMiddleware
impl Unpin for RateLimitMiddleware
impl UnwindSafe for RateLimitMiddleware
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
    T: 'a,
 
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
    T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
    T: 'a,
 
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
    T: 'a,
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
Source§impl<T> Instrument for T
 
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
 
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
 
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
 
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more