1
Fork 0
mirror of https://github.com/RGBCube/Site synced 2025-07-31 13:07:46 +00:00

Make it work

This commit is contained in:
RGBCube 2024-01-08 10:07:32 +03:00
parent 52783348df
commit 019e1c7091
No known key found for this signature in database
5 changed files with 49 additions and 41 deletions

13
Cargo.lock generated
View file

@ -147,6 +147,7 @@ checksum = "d09dbe0e490df5da9d69b36dca48a76635288a82f92eca90024883a56202026d"
dependencies = [
"async-trait",
"axum-core",
"axum-macros",
"bytes",
"futures-util",
"http",
@ -194,6 +195,18 @@ dependencies = [
"tracing",
]
[[package]]
name = "axum-macros"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a2edad600410b905404c594e2523549f1bcd4bded1e252c8f74524ccce0b867"
dependencies = [
"heck",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "axum-server"
version = "0.6.0"

View file

@ -9,23 +9,23 @@ repositoty = "https://github.com/RGBCube/rgbcube.github.io"
edition = "2021"
[dependencies]
anyhow = "1.0.77"
axum = "0.7.3"
axum-server = { version = "0.6.0", features = [ "tls-rustls" ] }
bytes = "1.5.0"
cargo_toml = "0.17.2"
chrono = "0.4.31"
clap = { version = "4.4.12", features = [ "derive" ] }
embed = { git = "https://github.com/RGBCube/embed-rs" }
env_logger = "0.10.1"
log = { version = "0.4.20", features = [ "serde" ] }
maud = { git = "https://github.com/lambda-fairy/maud", features = [ "axum" ] }
mime_guess = "2.0.4"
minify-js = "0.6.0"
pulldown-cmark = "0.9.3"
tokio = { version = "1.35.1", features = [ "full" ] }
tower = "0.4.13"
tower-http = { version = "0.5.0", features = [ "trace" ] }
anyhow = "1.0.77"
axum = { version = "0.7.3", features = [ "macros" ] }
axum-server = { version = "0.6.0", features = [ "tls-rustls" ] }
bytes = "1.5.0"
cargo_toml = "0.17.2"
chrono = "0.4.31"
clap = { version = "4.4.12", features = [ "derive" ] }
embed = { git = "https://github.com/RGBCube/embed-rs" }
env_logger = "0.10.1"
log = { version = "0.4.20", features = [ "serde" ] }
maud = { git = "https://github.com/lambda-fairy/maud", features = [ "axum" ] }
mime_guess = "2.0.4"
minify-js = "0.6.0"
pulldown-cmark = "0.9.3"
tokio = { version = "1.35.1", features = [ "full" ] }
tower = "0.4.13"
tower-http = { version = "0.5.0", features = [ "trace" ] }
[patch.crates-io]
proc-macro2 = { git = "https://github.com/RGBCube/proc-macro2" }

View file

@ -1,8 +1,8 @@
use std::array;
use actix_web::{
dev::ServiceResponse,
middleware::ErrorHandlerResponse,
use axum::{
http::StatusCode,
BoxError,
};
use maud::html;
@ -11,12 +11,9 @@ use crate::{
page::cube,
};
pub fn handler<B: 'static>(
response: ServiceResponse<B>,
) -> actix_web::Result<ErrorHandlerResponse<B>> {
let (request, response) = response.into_parts();
let response = response.set_body(
pub async fn handler(_: BoxError) -> (StatusCode, String) {
(
StatusCode::INTERNAL_SERVER_ERROR,
cube::create(
Some("Error"),
asset::Css::Shared("cube-grid.css"),
@ -32,11 +29,5 @@ pub fn handler<B: 'static>(
}),
)
.into_string(),
);
Ok(ErrorHandlerResponse::Response(
ServiceResponse::new(request, response)
.map_into_boxed_body()
.map_into_right_body(),
))
)
}

View file

@ -1,11 +1,15 @@
use axum::Router;
use axum::{
// error_handling::HandleErrorLayer,
Router,
};
// use tower::ServiceBuilder;
mod internal_server_error;
// mod internal_server_error;
mod not_found;
pub fn handler<B: 'static>() -> ErrorHandlers<B> {
Router::new().fallback(not_found::handler).handler(
StatusCode::INTERNAL_SERVER_ERROR,
internal_server_error::handler,
)
pub fn router() -> Router {
Router::new().fallback(not_found::handler)
// TODO
// .layer(ServiceBuilder::new().
// layer(HandleErrorLayer::new(internal_server_error::handler)))
}

View file

@ -10,7 +10,7 @@ use crate::{
page::cube,
};
pub fn handler() -> Markup {
pub async fn handler() -> Markup {
cube::create(
Some("404"),
asset::Css::Shared("cube-grid.css"),