Files
Inventario-IT/backend/Program.cs

52 lines
1.6 KiB
C#
Raw Normal View History

using Inventario.API.Data;
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
// --- 1. DEFINIR LA POLÍTICA CORS ---
// Definimos un nombre para nuestra política
var MyAllowSpecificOrigins = "_myAllowSpecificOrigins";
// Añadimos el servicio de CORS y configuramos la política
builder.Services.AddCors(options =>
{
options.AddPolicy(name: MyAllowSpecificOrigins,
policy =>
{
// Permitimos explícitamente el origen de tu frontend (Vite)
policy.WithOrigins("http://localhost:5173")
.AllowAnyHeader() // Permitir cualquier encabezado
.AllowAnyMethod(); // Permitir GET, POST, PUT, DELETE, etc.
});
});
// -----------------------------------
builder.Services.AddSingleton<DapperContext>();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "Inventario API V1");
c.RoutePrefix = string.Empty;
});
}
app.UseHttpsRedirection();
// --- 2. ACTIVAR EL MIDDLEWARE DE CORS ---
// ¡IMPORTANTE! Debe ir ANTES de MapControllers y DESPUÉS de UseHttpsRedirection (si se usa)
app.UseCors(MyAllowSpecificOrigins);
// ----------------------------------------
app.MapControllers();
app.Run();