Enable CORS on all endpoints

This commit is contained in:
2023-11-28 10:02:30 -05:00
parent 3baec7137c
commit 457a2f1724
7 changed files with 31 additions and 4 deletions

View File

@@ -30,9 +30,23 @@ try
if (apiKeysTemp != null) apiKeys = apiKeysTemp;
}
}
catch {}
catch { }
builder.Services.AddSingleton<IApiKeyValidator, ApiKeyValidator>(_ => new ApiKeyValidator(apiKeys));
//setup CORS if origins were supplied in the config file
string[]? allowedOrigins = builder.Configuration.GetValue<string[]>("AllowedOrigins");
if (allowedOrigins != null)
{
builder.Services.AddCors(options =>
{
options.AddPolicy(name: "AllowedOrigins",
policy =>
{
policy.WithOrigins(allowedOrigins);
});
});
}
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen(c =>
@@ -64,13 +78,21 @@ builder.Services.AddSwaggerGen(c =>
var app = builder.Build();
//
// Configure the HTTP request pipeline.
//
// if (app.Environment.IsDevelopment())
// {
app.UseSwagger();
app.UseSwaggerUI();
// }
if (allowedOrigins != null)
{
app.UseCors();
}
app.UseAuthentication();
app.UseAuthorization();