Skip to main content

validated_request_id_layer

Function validated_request_id_layer 

Source
pub fn validated_request_id_layer(
    config: RequestIdConfig,
) -> ValidatedRequestIdLayer
Expand description

Creates a validated request ID layer.

The layer validates or generates a request ID before the inner service runs, inserts that value into the configured request header, stores a RequestContext in request extensions, and mirrors the same header onto the response when the inner service has not already set it.

use axum::{Router, routing::get};
use nidus_http::middleware::{
    RequestIdConfig, RequestIdMode, validated_request_id_layer,
};

let app = Router::new()
    .route("/users/{id}", get(handler))
    .layer(validated_request_id_layer(
        RequestIdConfig::production().mode(RequestIdMode::Strict),
    ));