|
@@ -169,7 +169,7 @@ class Api implements RequestHandlerInterface
|
169
|
169
|
{
|
170
|
170
|
$parsedBody = $request->getParsedBody();
|
171
|
171
|
if ($parsedBody) {
|
172
|
|
- $request = $this->applySlimHack($request);
|
|
172
|
+ $request = $this->applyParsedBodyHack($request);
|
173
|
173
|
} else {
|
174
|
174
|
$body = $request->getBody();
|
175
|
175
|
if ($body->isReadable()) {
|
|
@@ -189,10 +189,10 @@ class Api implements RequestHandlerInterface
|
189
|
189
|
return $request;
|
190
|
190
|
}
|
191
|
191
|
|
192
|
|
- private function applySlimHack(ServerRequestInterface $request): ServerRequestInterface
|
|
192
|
+ private function applyParsedBodyHack(ServerRequestInterface $request): ServerRequestInterface
|
193
|
193
|
{
|
194
|
194
|
$class = get_class($request);
|
195
|
|
- if (substr($class, 0, 9) == 'Slim\Http') {
|
|
195
|
+ if (substr($class, 0, 9) == 'Slim\Http' || substr($class, 0, 14) == 'Zend\Diactoros') {
|
196
|
196
|
$parsedBody = $request->getParsedBody();
|
197
|
197
|
$contents = json_encode($parsedBody);
|
198
|
198
|
$parsedBody = $this->parseBody($contents);
|