subdomain_proxy

Function subdomain_proxy 

Source
pub async fn subdomain_proxy<R>(
    __arg0: State<(Arc<R>, ProxyConfig)>,
    request: Request,
) -> Result<Response, ProxyError>
where R: RouteResolver,
Expand description

Proxy middleware that routes based on subdomain

§Example

use axum::{Router, middleware};
use lmrc_proxy::{middleware::subdomain_proxy, routing::StaticRouteResolver, ProxyConfig};
use std::sync::Arc;

let resolver = Arc::new(
    StaticRouteResolver::new()
        .add_route("api", "http://api-service:8080")
);

let app = Router::new()
    .layer(middleware::from_fn_with_state(
        (resolver, ProxyConfig::default()),
        subdomain_proxy
    ));