Skip to main content

sz_rust_middleware_facade/
lib.rs

1//! sz-rust-middleware-facade — 中间件层(P3 解耦)
2//!
3//! 从 sz-rust-core 提取的 Tower 中间件簇(对齐 PHP ThinkPHP 中间件体系):
4//!
5//! - [`auth`]:JWT 校验 + 白名单跳过(**@REVIEW_REQUIRED,安全关键**)
6//! - [`sanctum`]:个人访问令牌认证(**@REVIEW_REQUIRED,安全关键**)
7//! - [`jwt_blacklist`]:JWT 黑名单 / 注销列表(**@REVIEW_REQUIRED,安全关键**)
8//! - [`builder`] / [`chain`] / [`order`] / [`handler_as_middleware`] / [`tower_compat`]:中间件组装
9//! - [`cors`] / [`csrf`] / [`rate_limit`] / [`log`] / [`trace`]:横切能力
10//! - [`request_scope`]:请求作用域(ScopeId 类型定义于此,解 container 双向环)
11//! - [`log`]:日志门面(LogFacade / LogLevel)
12//!
13//! ## 请求作用域(环消除设计)
14//!
15//! `ScopeId`(`pub type ScopeId = u64`)原定义于 sz-rust-core 的 `container` 模块,
16//! 与 `request_scope::current_scope_id()` 形成 container ↔ request_scope 双向依赖。
17//! P3 将 `ScopeId` 定义迁移至本 crate,sz-rust-core 的 `container` 通过
18//! `pub use sz_rust_middleware_facade::ScopeId` 重导出——依赖方向变为单向:
19//! `core(container) → middleware-facade`,环消除。
20//!
21//! sz-rust-core 通过 `pub use sz_rust_middleware_facade as middleware` 保留向后兼容路径。
22
23/// 请求作用域 ID(原定义于 sz-rust-core::container,P3 迁移至此消除双向环)
24pub type ScopeId = u64;
25
26pub mod auth;
27pub mod builder;
28pub mod chain;
29pub mod circuit_breaker;
30pub mod cors;
31pub mod csrf;
32pub mod handler_as_middleware;
33pub mod jwt_blacklist;
34pub mod log;
35pub mod order;
36pub mod rate_limit;
37pub mod request_scope;
38pub mod sanctum;
39pub mod sso_middleware;
40pub mod tower_compat;
41pub mod trace;