From 00ea587c6d48dce671189e56472a18cd12fc76fe Mon Sep 17 00:00:00 2001 From: Sebastian Martinez Date: Wed, 22 Mar 2023 20:31:48 +0100 Subject: [PATCH] httpd: Add `CorsLayer` to `/raw` endpoint Signed-off-by: Sebastian Martinez --- radicle-httpd/src/raw.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/radicle-httpd/src/raw.rs b/radicle-httpd/src/raw.rs index 909b0ef4..ddb9518e 100644 --- a/radicle-httpd/src/raw.rs +++ b/radicle-httpd/src/raw.rs @@ -1,11 +1,13 @@ use std::sync::Arc; +use std::time::Duration; use axum::extract::State; -use axum::http::{header, StatusCode}; +use axum::http::{header, Method, StatusCode}; use axum::response::IntoResponse; use axum::routing::get; use axum::Router; use hyper::HeaderMap; +use tower_http::cors; use radicle::prelude::Id; use radicle::profile::Profile; @@ -93,6 +95,13 @@ pub fn router(profile: Arc) -> Router { Router::new() .route("/:project/:sha/*path", get(file_handler)) .with_state(profile) + .layer( + cors::CorsLayer::new() + .max_age(Duration::from_secs(86400)) + .allow_origin(cors::Any) + .allow_methods([Method::GET]) + .allow_headers([header::CONTENT_TYPE]), + ) } async fn file_handler(