fix: update code to work with newer versions

pull/98/head
Jef Roosens 2023-04-29 15:41:51 +02:00
parent 63d0b1fc86
commit 5fa892f5a3
Signed by: Jef Roosens
GPG Key ID: B75D4F293C7052DB
1 changed files with 10 additions and 27 deletions

View File

@ -2,13 +2,14 @@ use std::{future::ready, net::SocketAddr};
use axum::{
extract::Extension,
http::StatusCode,
middleware,
response::Redirect,
routing::{any, get, get_service},
routing::{any, get},
Router,
};
use tower_http::{auth::RequireAuthorizationLayer, services::ServeDir, trace::TraceLayer};
use tower_http::{
services::ServeDir, trace::TraceLayer, validate_request::ValidateRequestHeaderLayer,
};
use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt};
mod api;
@ -46,7 +47,7 @@ async fn main() {
// Routes under /api path
.nest(
"/api",
api::router().layer(RequireAuthorizationLayer::bearer(&api_key)),
api::router().layer(ValidateRequestHeaderLayer::bearer(&api_key)),
)
.route("/metrics", get(move || ready(recorder_handle.render())));
@ -61,17 +62,7 @@ async fn main() {
for (path, dir) in sites {
let full_path = format!("{}/{}", static_dir, dir);
app = app.nest(
path,
get_service(ServeDir::new(full_path)).handle_error(
|error: std::io::Error| async move {
(
StatusCode::INTERNAL_SERVER_ERROR,
format!("Unhandled internal error: {}", error),
)
},
),
);
app = app.nest_service(path, ServeDir::new(full_path));
}
// Define some redirects
@ -90,18 +81,10 @@ async fn main() {
app = app
// The fallback option is to serve the actual static files
.fallback(
get_service(ServeDir::new(format!(
.fallback_service(ServeDir::new(format!(
"{}/{}",
static_dir, DEFAULT_STATIC_SITE
)))
.handle_error(|error: std::io::Error| async move {
(
StatusCode::INTERNAL_SERVER_ERROR,
format!("Unhandled internal error: {}", error),
)
}),
)
.layer(middleware::from_fn(metrics::track_metrics))
.layer(Extension(data_dir))
.layer(TraceLayer::new_for_http());