Skip to main content

wae_https/router/
mod.rs

1//! HTTP 路由模块
2//!
3//! 提供路由构建和管理工具。
4
5use axum::Router;
6
7/// 路由构建器
8pub struct RouterBuilder {
9    router: Router,
10}
11
12impl RouterBuilder {
13    /// 创建新的路由构建器
14    pub fn new() -> Self {
15        Self { router: Router::new() }
16    }
17
18    /// 添加路由
19    pub fn route(mut self, path: &str, router: Router) -> Self {
20        self.router = self.router.nest(path, router);
21        self
22    }
23
24    /// 合并路由
25    pub fn merge(mut self, router: Router) -> Self {
26        self.router = self.router.merge(router);
27        self
28    }
29
30    /// 构建路由
31    pub fn build(self) -> Router {
32        self.router
33    }
34}
35
36impl Default for RouterBuilder {
37    fn default() -> Self {
38        Self::new()
39    }
40}
41
42/// 健康检查路由
43pub fn health_check_router() -> Router {
44    Router::new().route("/health", axum::routing::get(|| async { "OK" }))
45}