From 67fd00cf2a627a7f86c40725ab4d6e6377baba8d Mon Sep 17 00:00:00 2001 From: skyred Date: Thu, 13 Apr 2017 17:01:14 +0200 Subject: [PATCH] Issue #2860073 by skyredwang, dawehner, Wim Leers, e0ipso, Grimreaper: Skip body deserialization for safe methods --- src/Controller/RequestHandler.php | 2 +- tests/src/Unit/Controller/RequestHandlerTest.php | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Controller/RequestHandler.php b/src/Controller/RequestHandler.php index 7a398b7..4efe1c7 100644 --- a/src/Controller/RequestHandler.php +++ b/src/Controller/RequestHandler.php @@ -112,7 +112,7 @@ class RequestHandler implements ContainerAwareInterface, ContainerInjectionInter */ public function deserializeBody(Request $request, SerializerInterface $serializer, $serialization_class, CurrentContext $current_context) { $received = $request->getContent(); - if (empty($received)) { + if (empty($received) || $request->isMethodSafe()) { return NULL; } $format = $request->getContentType(); diff --git a/tests/src/Unit/Controller/RequestHandlerTest.php b/tests/src/Unit/Controller/RequestHandlerTest.php index 8f86e18..4e1ee64 100644 --- a/tests/src/Unit/Controller/RequestHandlerTest.php +++ b/tests/src/Unit/Controller/RequestHandlerTest.php @@ -30,6 +30,7 @@ class RequestHandlerTest extends UnitTestCase { $request = $this->prophesize(Request::class); $request->getContentType()->willReturn(NULL); $request->getContent()->willReturn('this is not used'); + $request->isMethodSafe()->willReturn(FALSE); $request->getMethod()->willReturn(NULL); $request->get(Argument::any())->willReturn(NULL); $request->getMimeType(Argument::any())->willReturn(NULL); -- 1.9.1