From 465b3ac01a634603a04a2e9ce175d6e5ef5fa18f Mon Sep 17 00:00:00 2001 From: Eugene Fox Date: Fri, 23 Feb 2024 13:02:51 +0000 Subject: [PATCH] - Added CORS - Fixed backed Dockerfile to have /persistence if volume is not attached --- backend/Dockerfile | 1 + backend/MuiCharts.Api/Program.cs | 13 +++++++++++++ backend/MuiCharts.Api/appsettings.json | 4 ++++ 3 files changed, 18 insertions(+) diff --git a/backend/Dockerfile b/backend/Dockerfile index 9465077..d9f5b32 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -19,6 +19,7 @@ FROM mcr.microsoft.com/dotnet/aspnet:8.0 as runtime WORKDIR /app COPY --from=build /app/out ./ +RUN mkdir /persistence ENV HTTP_PORTS=80 EXPOSE 80 diff --git a/backend/MuiCharts.Api/Program.cs b/backend/MuiCharts.Api/Program.cs index a98fdb9..06c1c10 100644 --- a/backend/MuiCharts.Api/Program.cs +++ b/backend/MuiCharts.Api/Program.cs @@ -21,6 +21,17 @@ WebApplicationBuilder builder = WebApplication.CreateBuilder(args); builder.AddInfrastructure(); + builder.Services.AddCors(options => + { + options.AddDefaultPolicy(policy => + { + policy + .WithOrigins(builder.Configuration.GetValue("Cors:Origins") ?? ["*"]) + .WithMethods(builder.Configuration.GetValue("Cors:Methods") ?? ["*"]) + .AllowAnyHeader(); + }); + }); + builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(options => { @@ -46,6 +57,8 @@ WebApplication app = builder.Build(); if (app.Configuration.GetSection("LettuceEncrypt").Exists()) app.UseHttpsRedirection(); + app.UseCors(); + app.MapControllers(); app.Run(); diff --git a/backend/MuiCharts.Api/appsettings.json b/backend/MuiCharts.Api/appsettings.json index 943f5d5..7bbe647 100644 --- a/backend/MuiCharts.Api/appsettings.json +++ b/backend/MuiCharts.Api/appsettings.json @@ -8,5 +8,9 @@ "AllowedHosts": "*", "ConnectionStrings": { "DataContext": "Data Source=/persistence/data.db" + }, + "Cors": { + "Origins": ["*"], + "Methods": ["GET", "POST", "PUT", "DELETE"] } }