Getting started Community Training Tutorials Documentation APIs, AI & Tools
async fn request_filter(state: RequestState) -> Flow<String> {
let state = state.into_headers_state().await;
let handler = state.handler();
if handler.header("authorization").is_some() {
Flow::Continue(state.path())
} else {
Flow::Break(
Response::new(401)
.with_headers(vec![(
"WWW-Authenticate".to_string(),
"Bearer realm=\"oauth2\"".to_string(),
)])
.with_body(r#"{ "error": "token was not present"}"#),
)
}
}
async fn response_filter(state: ResponseState, request_data: RequestData<String>) {
// Handle only completed requests
if let RequestData::Continue(path) = request_data else {
return;
};
let state = state.into_headers_state().await;
logger::info!("Path: {path}, Status: {}", state.status_code());
}



