Files
agologum/api/Program.cs
Blitblank 0da09d7594
Some checks failed
Build and Deploy Frontend / build-and-deploy (push) Successful in 7s
Build and Deploy API / build-and-deploy (push) Failing after 14s
dev postgresql database integration
2026-03-14 10:37:30 -05:00

61 lines
1.4 KiB
C#

using Microsoft.AspNetCore.HttpOverrides;
using Microsoft.EntityFrameworkCore;
using agologumApi.Services;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDbContext<AppDbContext>(options =>
options.UseNpgsql(builder.Configuration.GetConnectionString("DefaultConnection")));
builder.Services.AddControllers();
builder.Services.AddScoped<UserService>();
// configuration for behind my nginx proxy
builder.Services.Configure<ForwardedHeadersOptions>(options =>
{
options.ForwardedHeaders =
ForwardedHeaders.XForwardedFor |
ForwardedHeaders.XForwardedProto;
options.KnownIPNetworks.Clear();
options.KnownProxies.Clear();
});
// Add services to the container.
// Learn more about configuring OpenAPI at https://aka.ms/aspnet/openapi
builder.Services.AddOpenApi();
builder.Services.AddCors(options =>
{
options.AddPolicy("dev",
policy =>
{
policy.AllowAnyOrigin()
.AllowAnyHeader()
.AllowAnyMethod();
});
});
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
var app = builder.Build();
app.UseForwardedHeaders();
app.UseCors("dev");
// Configure the HTTP request pipeline.
if (app.Environment.IsEnvironment("Development")) {
app.MapOpenApi();
app.UseSwagger();
app.UseSwaggerUI();
} else {
app.UseHttpsRedirection();
}
app.MapControllers();
app.Run();