# anyhow-http

`anyhow-http` offers customizable HTTP errors built on [`anyhow`](https://docs.rs/prometheus/latest/prometheus/) errors. This crates acts as a superset of [`anyhow`](https://docs.rs/prometheus/latest/prometheus/), extending the functionality to define custom HTTP error responses. ## Example ```rust use axum::{ routing::get, response::IntoResponse, Router, }; use anyhow_http::{http_error_ret, response::Result}; #[tokio::main] async fn main() { let app = Router::new() .route("/", get(handler)); let listener = tokio::net::TcpListener::bind("127.0.0.1:3000") .await .unwrap(); axum::serve(listener, app).await.unwrap(); } fn fallible_operation() -> Result<()> { http_error_ret!(INTERNAL_SERVER_ERROR, "this is an error") } async fn handler() -> Result { fallible_operation()?; Ok(()) } ``` ## License Licensed under [MIT](https://github.com/heat1q/anyhow-http/blob/master/LICENSE).