2 unstable releases

0.2.0 Feb 5, 2023
0.1.0 Apr 7, 2022

#9 in #socket-address

31 downloads per month

MIT license

4KB

axum-error

cargo add axum-error

Provides an Error type which can be used in a eyre-like fashion for axum, as well as simple error handling with fehler.

use axum::{response::Html, routing::get, Router};
use std::{fs::read_to_string, net::SocketAddr};
use axum_error::*;
 
#[throws]
#[tokio::main]
async fn main() {
    let app = Router::new().route("/", get(index));
    axum::Server::bind(&SocketAddr::from(([127, 0, 0, 1], 3000)))
        .serve(app.into_make_service())
        .await?;
}
 
#[throws]
async fn index() -> Html<String> {
    Html(read_to_string("index.html")?)
}

lib.rs:

Provides an Error type which can be used in a eyre-like fashion for axum

use axum::{response::Html, routing::get, Router};
use std::{fs::read_to_string, net::SocketAddr};
use axum_error::Result;

#[tokio::main]
async fn main() {
    let app = Router::new().route("/", get(index));
    axum::Server::bind(&SocketAddr::from(([127, 0, 0, 1], 3000)))
        .serve(app.into_make_service())
        .await
        .unwrap()
}

async fn index() -> Result<Html<String>> {
    Ok(Html(read_to_string("index.html")?))
}

Dependencies

~6–12MB
~144K SLoC