24 lines
757 B
Rust
24 lines
757 B
Rust
//! CORS layer factory for the daemon HTTP server.
|
|||
|
|
|
||
|
|
use tower_http::cors::{AllowHeaders, AllowOrigin, CorsLayer};
|
||
|
|
|
||
|
|
/// Return a permissive CorsLayer for local daemon IPC.
|
||
|
|
pub fn default_cors_layer() -> CorsLayer {
|
||
|
|
CorsLayer::new()
|
||
|
|
.allow_origin(AllowOrigin::any())
|
||
|
|
.allow_methods([
|
||
|
|
"GET".parse().unwrap(),
|
||
|
|
"POST".parse().unwrap(),
|
||
|
|
"PUT".parse().unwrap(),
|
||
|
|
"DELETE".parse().unwrap(),
|
||
|
|
"PATCH".parse().unwrap(),
|
||
|
|
"OPTIONS".parse().unwrap(),
|
||
|
|
])
|
||
|
|
.allow_headers(AllowHeaders::any())
|
||
|
|
.expose_headers([
|
||
|
|
"Content-Type".parse().unwrap(),
|
||
|
|
"X-Session-Id".parse().unwrap(),
|
||
|
|
"X-Request-Id".parse().unwrap(),
|
||
|
|
])
|
||
|
|
}
|