From bf2d937f488fa7466d5a7b5fe2b735b589707265 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Sat, 4 Apr 2026 10:07:17 +0200 Subject: [PATCH] Update log x intercettare richieste IOC --- MP.IOC/Program.cs | 34 +++++++++++++++++++++++++++++---- MP.IOC/Resources/ChangeLog.html | 2 +- MP.IOC/Resources/VersNum.txt | 2 +- MP.IOC/Resources/manifest.xml | 2 +- 4 files changed, 33 insertions(+), 7 deletions(-) diff --git a/MP.IOC/Program.cs b/MP.IOC/Program.cs index 3747c285..11c5e0b6 100644 --- a/MP.IOC/Program.cs +++ b/MP.IOC/Program.cs @@ -1,3 +1,4 @@ +using Microsoft.AspNetCore.Http.Extensions; using MP.IOC.Data; using MP.IOC.Services; using NLog; @@ -86,14 +87,39 @@ var app = builder.Build(); // aggiunt base URL x routing corretto string baseUrl = configuration.GetValue("ServerConf:BaseUrl") ?? ""; app.UsePathBase(baseUrl); +string routePath = configuration.GetValue("ServerConf:RoutePath") ?? "/api/RIOB"; +string fullPath = $"{baseUrl}{routePath}".Replace("//", "/"); logger.Info($"BaseUrl: {baseUrl}"); -// Map route to RouteManager -app.Map("/MP/IOC/api/RIOB/{**catchAll}", async (HttpContext ctx) => +app.Use(async (ctx, next) => { - var routeManager = ctx.RequestServices.GetRequiredService(); - await routeManager.HandleAsync(ctx); + logger.Debug($"Incoming request PathBase='{ctx.Request.PathBase}' Path='{ctx.Request.Path}' RawTarget='{ctx.Request.GetEncodedUrl()}'"); + await next(); }); + + + +// Map route to RouteManager +//app.Map("/MP/IOC/api/RIOB/{**catchAll}", async (HttpContext ctx) => +//{ +// var routeManager = ctx.RequestServices.GetRequiredService(); +// await routeManager.HandleAsync(ctx); +//}); + +// parametrizzare?!?!? +app.MapWhen(ctx => + ctx.Request.Path.StartsWithSegments(fullPath, StringComparison.OrdinalIgnoreCase) || + ctx.Request.Path.StartsWithSegments(routePath, StringComparison.OrdinalIgnoreCase) || + (ctx.Request.PathBase.HasValue && ctx.Request.Path.StartsWithSegments(routePath, StringComparison.OrdinalIgnoreCase)), + builder => + { + builder.Run(async ctx => + { + var routeManager = ctx.RequestServices.GetRequiredService(); + await routeManager.HandleAsync(ctx); + }); + }); + logger.Info("App: route Mapped"); diff --git a/MP.IOC/Resources/ChangeLog.html b/MP.IOC/Resources/ChangeLog.html index b8026c42..2bdeaabd 100644 --- a/MP.IOC/Resources/ChangeLog.html +++ b/MP.IOC/Resources/ChangeLog.html @@ -1,6 +1,6 @@ Modulo MP-IOC -

Versione: 6.16.2604.409

+

Versione: 6.16.2604.410


Note di rilascio:
  • diff --git a/MP.IOC/Resources/VersNum.txt b/MP.IOC/Resources/VersNum.txt index 897dec95..1d821d29 100644 --- a/MP.IOC/Resources/VersNum.txt +++ b/MP.IOC/Resources/VersNum.txt @@ -1 +1 @@ -6.16.2604.409 +6.16.2604.410 diff --git a/MP.IOC/Resources/manifest.xml b/MP.IOC/Resources/manifest.xml index 31d094a8..dd967cbf 100644 --- a/MP.IOC/Resources/manifest.xml +++ b/MP.IOC/Resources/manifest.xml @@ -1,6 +1,6 @@ - 6.16.2604.409 + 6.16.2604.410 https://nexus.steamware.net/repository/SWS/MP-IOC/stable/LAST/MP.IOC.zip https://nexus.steamware.net/repository/SWS/MP-IOC/stable/LAST/ChangeLog.html false