refactor: 重构待办事项模块结构与命名
This commit is contained in:
@@ -8,6 +8,7 @@ using Microsoft.Extensions.Hosting;
|
||||
using System.Text.Json;
|
||||
using Hua.Todo.Application;
|
||||
using Hua.Todo.Application.DynamicApi;
|
||||
using Hua.Todo.Application.DynamicApi.Swagger;
|
||||
using Hua.Todo.Maui.Models;
|
||||
using AppSettings = Hua.Todo.Maui.Models.AppSettings;
|
||||
|
||||
@@ -65,6 +66,12 @@ public class EmbeddedWebServerService : IEmbeddedWebServerService
|
||||
});
|
||||
|
||||
builder.Services.AddEndpointsApiExplorer();
|
||||
#if DEBUG
|
||||
builder.Services.AddSwaggerGen(options =>
|
||||
{
|
||||
options.DocumentFilter<DynamicApiSwaggerDocumentFilter>();
|
||||
});
|
||||
#endif
|
||||
|
||||
// 注册应用逻辑服务
|
||||
builder.Services.AddApplicationServices(_appSettings.WebServer.ConnectionString);
|
||||
@@ -82,6 +89,11 @@ public class EmbeddedWebServerService : IEmbeddedWebServerService
|
||||
|
||||
var app = builder.Build();
|
||||
|
||||
#if DEBUG
|
||||
app.UseSwagger();
|
||||
app.UseSwaggerUI();
|
||||
#endif
|
||||
|
||||
// 如果配置为使用静态文件(前端托管),则配置静态文件服务
|
||||
if (_appSettings.WebServer.IsUsingStatic)
|
||||
{
|
||||
@@ -135,7 +147,18 @@ public class EmbeddedWebServerService : IEmbeddedWebServerService
|
||||
if (context.Request.Path.HasValue)
|
||||
{
|
||||
var path = context.Request.Path.Value;
|
||||
if (path != "/" && !path.StartsWith("/assets", StringComparison.OrdinalIgnoreCase) && !path.StartsWith("/api", StringComparison.OrdinalIgnoreCase))
|
||||
|
||||
// Swagger 仅在 DEBUG 下启用;Release 下不应把 /swagger 当作“后端专用路径”排除,
|
||||
// 否则访问 /swagger 会直接 404 而不会回落到 SPA(/index.html)。
|
||||
#if DEBUG
|
||||
var isSwaggerPath = path.StartsWith("/swagger", StringComparison.OrdinalIgnoreCase);
|
||||
#else
|
||||
var isSwaggerPath = false;
|
||||
#endif
|
||||
if (path != "/"
|
||||
&& !path.StartsWith("/assets", StringComparison.OrdinalIgnoreCase)
|
||||
&& !path.StartsWith("/api", StringComparison.OrdinalIgnoreCase)
|
||||
&& !isSwaggerPath)
|
||||
{
|
||||
var ext = Path.GetExtension(path);
|
||||
if (string.IsNullOrEmpty(ext))
|
||||
|
||||
Reference in New Issue
Block a user