Serve files in assets/

This commit is contained in:
Ethan Girouard 2024-03-31 13:08:48 -04:00
parent 1c9dc4bbe9
commit db0d2c6cb9
Signed by: eta357
GPG Key ID: 7BCDC36DFD11C146
2 changed files with 4 additions and 3 deletions

View File

@ -25,7 +25,7 @@ cfg_if! { if #[cfg(feature = "ssr")] {
}
}
async fn get_static_file(uri: Uri, root: &str) -> Result<Response<Body>, (StatusCode, String)> {
pub async fn get_static_file(uri: Uri, root: &str) -> Result<Response<Body>, (StatusCode, String)> {
let req = Request::builder().uri(uri.clone()).body(Body::empty()).unwrap();
// `ServeDir` implements `tower::Service` so we can call it with `tower::ServiceExt::oneshot`
// This path is relative to the cargo root

View File

@ -14,11 +14,11 @@ extern crate diesel_migrations;
#[cfg(feature = "ssr")]
#[tokio::main]
async fn main() {
use axum::{routing::post, Router};
use axum::{routing::{post, get}, Router};
use leptos::*;
use leptos_axum::{generate_route_list, LeptosRoutes};
use libretunes::app::*;
use libretunes::fileserv::file_and_error_handler;
use libretunes::fileserv::{file_and_error_handler, get_static_file};
use dotenv::dotenv;
dotenv().ok();
@ -37,6 +37,7 @@ async fn main() {
let app = Router::new()
.route("/api/*fn_name", post(leptos_axum::handle_server_fns))
.leptos_routes(&leptos_options, routes, App)
.route("/assets/*uri", get(|uri| get_static_file(uri, "")))
.fallback(file_and_error_handler)
.with_state(leptos_options);