Fix Sppass which uses GET instead of POST

This commit is contained in:
Kayori
2026-09-29 09:23:05 +02:00
parent 3f5eff30da
commit 10f804fa3f
9 changed files with 86 additions and 46 deletions
+11 -3
View File
@@ -195,6 +195,15 @@ eamuseGroup.MapPost("/", ([FromQuery] string model, [FromQuery] string? module,
return HandleEAmuseRoute(amusementRequest, httpContext, logger, handlerService, pluginService);
});
eamuseGroup.MapGet("/{module}/{model}/{module2}/{method}", (string module, string model, string module2, string method,
HttpContext httpContext, [FromServices] ILogger<Program> logger, [FromServices] IHandlerService handlerService,
[FromServices] IPluginService pluginService) =>
{
var amusementRequest = new AmusementRequest() { Model = model, Module = module ?? "", Method = method ?? "" };
return HandleEAmuseRoute(amusementRequest, httpContext, logger, handlerService, pluginService);
});
var graphqlMap = app.MapGraphQL();
app.MapFallbackToFile("/index.html");
@@ -230,11 +239,10 @@ async Task<IResult> HandleEAmuseRoute(AmusementRequest amusementRequest, HttpCon
Console.WriteLine(httpContext.Request.Headers.UserAgent);
// Enable buffering to allow multiple reads of the request body
httpContext.Request.EnableBuffering();
var body = "";
// The body is 932 encoded xml
if (httpContext.Request.Body.Length != 0)
string body;
using (var reader = new StreamReader(httpContext.Request.Body, Encoding.GetEncoding(932), false, 1024, true))
{
using var reader = new StreamReader(httpContext.Request.Body, Encoding.GetEncoding(932), false, 1024, true);
body = await reader.ReadToEndAsync();
}