rate_limit_layer

Function rate_limit_layer 

Source
pub async fn rate_limit_layer(
    __arg0: State<SecurityState>,
    __arg1: ConnectInfo<SocketAddr>,
    request: Request,
    next: Next,
) -> Response
Expand description

Rate limiting middleware layer for axum

Applies rate limiting based on operation type and client IP.

§Example

use axum::{Router, routing::get, middleware};
use ruvector_security::middleware::{rate_limit_layer, SecurityState};

let security = SecurityState::default();
let app = Router::new()
    .route("/api", get(|| async { "limited" }))
    .layer(middleware::from_fn_with_state(security, rate_limit_layer));