From 042caa6b91b337104022e67993cb5464353a63d2 Mon Sep 17 00:00:00 2001 From: Emrah Tokalak Date: Sat, 3 Feb 2024 02:20:30 +0300 Subject: [PATCH] Fix: #5533 - Enabled reading request body for HTTP POST requests. (#13853) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: emrah.tokalak Co-authored-by: Sébastien Ros --- .../OrchardCore.Queries/Controllers/ApiController.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/OrchardCore.Modules/OrchardCore.Queries/Controllers/ApiController.cs b/src/OrchardCore.Modules/OrchardCore.Queries/Controllers/ApiController.cs index 80c592b0ffa..94733b1e6b2 100644 --- a/src/OrchardCore.Modules/OrchardCore.Queries/Controllers/ApiController.cs +++ b/src/OrchardCore.Modules/OrchardCore.Queries/Controllers/ApiController.cs @@ -1,7 +1,10 @@ using System.Collections.Generic; +using System.IO; +using System.Text; using System.Text.Json; using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace OrchardCore.Queries.Controllers @@ -43,7 +46,13 @@ IQueryManager queryManager return NotFound(); } - var queryParameters = parameters != null ? + if (Request.Method == HttpMethods.Post && string.IsNullOrEmpty(parameters)) + { + using var reader = new StreamReader(Request.Body, Encoding.UTF8); + parameters = await reader.ReadToEndAsync(); + } + + var queryParameters = !string.IsNullOrEmpty(parameters) ? JConvert.DeserializeObject>(parameters) : [];