using Yuanshen.SDK; using Yuanshen.SDK.Handlers; using Yuanshen.Common.Console; Console.Title = "Yuanshen | SDK Server"; Directory.SetCurrentDirectory(AppContext.BaseDirectory); ConsoleBanner.Print("SDK SERVER", new[] { ("listen", "http://*:8899"), ("serves", "region list, shield login, combo granter") }); var builder = WebApplication.CreateBuilder(args); builder.Logging.ClearProviders(); builder.WebHost.UseUrls("http://*:8899"); var app = builder.Build(); GachaHistoryHandler.Use(builder.Configuration["Database:ConnectionString"] ?? string.Empty); app.Use(async (ctx, next) => { Log.Http(ctx.Request.Method, $"{ctx.Request.Path}{ctx.Request.QueryString}"); await next(); }); app.MapGet("/gacha/history", GachaHistoryHandler.OnHistory); app.MapGet("/common/{product_name}/announcement/api/getAlertAnn", AnnouncementHandler.OnAlertAnn); app.MapGet("/common/{product_name}/announcement/api/getAlertPic", AnnouncementHandler.OnAlertAnn); app.MapGet("/common/{product_name}/announcement/api/getAnnList", AnnouncementHandler.OnAnnList); app.MapGet("/common/{product_name}/announcement/api/getAnnContent", AnnouncementHandler.OnAnnContent); app.MapGet("/query_region_list", RegionHandler.OnQueryRegionList); app.MapGet("/query_cur_region", RegionHandler.OnQueryCurRegion); app.MapPost("/account/risky/api/check", AuthHandler.OnCaptchaRequest); app.MapPost("/{product_name}/mdk/shield/api/loadConfig", AuthHandler.OnLoadConfig); app.MapGet("/{product_name}/mdk/shield/api/loadConfig", AuthHandler.OnLoadConfig); app.MapGet("/{product_name}/combo/granter/api/getConfig", AuthHandler.OnGetConfig); app.MapGet("/{product_name}/combo/granter/api/getProtocol", AuthHandler.OnGetProtocol); app.MapPost("/{product_name}/combo/granter/api/getProtocol", AuthHandler.OnGetProtocol); app.MapPost("/{product_name}/mdk/shield/api/login", AuthHandler.OnPasswordLogin); app.MapPost("/{product_name}/mdk/shield/api/verify", AuthHandler.OnPasswordLogin); app.MapPost("/{product_name}/combo/granter/login/v2/login", AuthHandler.OnGranterLogin); app.MapPost("/{product_name}/combo/granter/login/beforeVerify", AuthHandler.OnBeforeVerify); app.MapPost("/combo/granter/login/beforeVerify", AuthHandler.OnBeforeVerify); app.MapPost("/{product_name}/combo/granter/login/genAuthKey", AuthHandler.OnGenAuthKey); app.MapPost("/log", TelemetryHandler.OnLog); app.MapPost("/config", TelemetryHandler.OnLog); app.MapPost("/sdk/dataUpload", TelemetryHandler.OnLog); app.MapPost("/log/sdk/upload", TelemetryHandler.OnLog); app.MapFallback(TelemetryHandler.OnUnhandled); Log.Ready("http://*:8899"); await app.RunAsync();