fix(wasm): hooks 模块移出 server gate,双端可见
mod hooks 原被 cfg(feature = "server") 包裹,WASM 前端无法引用 hooks 中的 代码。移出后 server 与 WASM 两端均能访问 hooks 模块。 同步修正 backup.rs 的 import 排序(cargo fmt 自动调整)
This commit is contained in:
parent
5b6cb7d796
commit
d1c41e8fc5
11
src/main.rs
11
src/main.rs
@ -35,9 +35,9 @@ pub mod infra;
|
|||||||
mod highlight;
|
mod highlight;
|
||||||
// middleware:Axum 中间件与启动期纯函数(cache-control / admin 守卫 / 压缩层),
|
// middleware:Axum 中间件与启动期纯函数(cache-control / admin 守卫 / 压缩层),
|
||||||
// server-only。从 main.rs 抽出以便独立测试,路由组装处以 crate::middleware::xxx 调用。
|
// server-only。从 main.rs 抽出以便独立测试,路由组装处以 crate::middleware::xxx 调用。
|
||||||
|
mod hooks;
|
||||||
#[cfg(feature = "server")]
|
#[cfg(feature = "server")]
|
||||||
mod middleware;
|
mod middleware;
|
||||||
mod hooks;
|
|
||||||
mod models;
|
mod models;
|
||||||
mod pages;
|
mod pages;
|
||||||
mod router;
|
mod router;
|
||||||
@ -349,7 +349,9 @@ fn main() {
|
|||||||
// layer 顺序:后加的最外层先执行。CSRF 最外层先拦截非法来源。
|
// layer 顺序:后加的最外层先执行。CSRF 最外层先拦截非法来源。
|
||||||
let mut app_routes = dioxus_app
|
let mut app_routes = dioxus_app
|
||||||
.layer(axum::middleware::from_fn(ssr_generation_middleware))
|
.layer(axum::middleware::from_fn(ssr_generation_middleware))
|
||||||
.layer(axum::middleware::from_fn(crate::middleware::add_cache_control))
|
.layer(axum::middleware::from_fn(
|
||||||
|
crate::middleware::add_cache_control,
|
||||||
|
))
|
||||||
.layer(axum::middleware::from_fn(crate::api::csrf::csrf_middleware));
|
.layer(axum::middleware::from_fn(crate::api::csrf::csrf_middleware));
|
||||||
if let Some(layer) = crate::middleware::compression_layer_from_env() {
|
if let Some(layer) = crate::middleware::compression_layer_from_env() {
|
||||||
app_routes = app_routes.layer(layer);
|
app_routes = app_routes.layer(layer);
|
||||||
@ -360,9 +362,8 @@ fn main() {
|
|||||||
));
|
));
|
||||||
// admin_guard 置于最外层(最后添加 = 最先执行):未登录的 /admin* 请求
|
// admin_guard 置于最外层(最后添加 = 最先执行):未登录的 /admin* 请求
|
||||||
// 在 CSRF / cache / SSR 渲染之前就被 302 短路,零渲染开销。
|
// 在 CSRF / cache / SSR 渲染之前就被 302 短路,零渲染开销。
|
||||||
let app_routes = app_routes.layer(axum::middleware::from_fn(
|
let app_routes =
|
||||||
crate::middleware::admin_guard,
|
app_routes.layer(axum::middleware::from_fn(crate::middleware::admin_guard));
|
||||||
));
|
|
||||||
|
|
||||||
// 静态资源路由:图片文件服务。
|
// 静态资源路由:图片文件服务。
|
||||||
// 注意:`dioxus::server::serve()` 接管了 listener 与 `into_make_service`
|
// 注意:`dioxus::server::serve()` 接管了 listener 与 `into_make_service`
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
use dioxus::prelude::*;
|
use dioxus::prelude::*;
|
||||||
|
|
||||||
use crate::components::ui::{BTN_OUTLINE, BTN_TEXT_AMBER, BTN_TEXT_RED, LoadingButton};
|
use crate::components::ui::{LoadingButton, BTN_OUTLINE, BTN_TEXT_AMBER, BTN_TEXT_RED};
|
||||||
|
|
||||||
use super::format_bytes;
|
use super::format_bytes;
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user