This commit is contained in:
2023-08-11 18:23:24 +08:00
parent 72ee9b473d
commit 70539e6b20
+10 -3
View File
@@ -6,6 +6,7 @@ namespace Kiri\Server\Handler;
use Exception; use Exception;
use Kiri; use Kiri;
use Kiri\Core\Xml;
use Kiri\Di\Inject\Container; use Kiri\Di\Inject\Container;
use Kiri\Di\Context; use Kiri\Di\Context;
use Kiri\Di\Interface\ResponseEmitterInterface; use Kiri\Di\Interface\ResponseEmitterInterface;
@@ -127,9 +128,15 @@ class OnRequest implements OnRequestInterface
->withServerParams($request->server) ->withServerParams($request->server)
->withQueryParams($request->get ?? []) ->withQueryParams($request->get ?? [])
->withUploadedFiles($request->files ?? []) ->withUploadedFiles($request->files ?? [])
->withMethod($request->getMethod()) ->withMethod($request->getMethod());
->withParsedBody($request->post ?? []); $contentType = $serverRequest->header('Content-Type');
if (str_contains($contentType, 'json')) {
$serverRequest->withParsedBody(json_decode($request->post, true));
} else if (str_contains($contentType, 'xml')) {
$serverRequest->withParsedBody(Xml::toArray($request->post));
} else {
$serverRequest->withParsedBody($request->post ?? []);
}
/** @var ConstrictRequest $PsrRequest */ /** @var ConstrictRequest $PsrRequest */
return Context::set(RequestInterface::class, $serverRequest); return Context::set(RequestInterface::class, $serverRequest);
} }