service/http_server/api/v0/
mod.rs

1use axum::Router;
2use http::header::{ACCEPT, ORIGIN};
3use http::Method;
4use tower_http::cors::{Any, CorsLayer};
5
6pub mod bucket;
7
8use crate::ServiceState;
9
10pub fn router(state: ServiceState) -> Router<ServiceState> {
11    let cors_layer = CorsLayer::new()
12        .allow_methods(vec![Method::GET])
13        .allow_headers(vec![ACCEPT, ORIGIN])
14        .allow_origin(Any)
15        .allow_credentials(false);
16
17    Router::new()
18        .nest("/bucket", bucket::router(state.clone()))
19        .with_state(state)
20        .layer(cors_layer)
21}