use axum::{ Json, extract::{FromRequest, Request, rejection::JsonRejection}, }; use crate::ErrorResponse; pub struct ApiJson(pub T); impl FromRequest for ApiJson where Json: FromRequest, S: Send + Sync, { type Rejection = ErrorResponse; #[inline] async fn from_request(req: Request, state: &S) -> Result { Ok(Self(Json::from_request(req, state).await?.0)) } }