From 0aab41cbea08da946e4cfff6aad50d6fd4e17a14 Mon Sep 17 00:00:00 2001 From: Jeremiah VALERIE Date: Thu, 9 Feb 2017 13:56:09 +0100 Subject: [PATCH] Fix request with empty variables json string see #49 --- Request/BatchParser.php | 2 +- Request/Parser.php | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Request/BatchParser.php b/Request/BatchParser.php index d07812497..3d92e5eff 100644 --- a/Request/BatchParser.php +++ b/Request/BatchParser.php @@ -39,7 +39,7 @@ public function parse(Request $request) } foreach ($queries as $i => &$query) { - $query = $query + self::$queriesDefaultValue; + $query = array_filter($query) + self::$queriesDefaultValue; if (!is_string($query[static::PARAM_QUERY])) { throw new BadRequestHttpException(sprintf('%s is not a valid query', json_encode($query[static::PARAM_QUERY]))); diff --git a/Request/Parser.php b/Request/Parser.php index 41cfd7435..b7944de52 100644 --- a/Request/Parser.php +++ b/Request/Parser.php @@ -86,11 +86,11 @@ private function getParsedBody(Request $request) private function getParams(Request $request, array $data = []) { // Add default request parameters - $data = $data + [ - static::PARAM_QUERY => null, - static::PARAM_VARIABLES => null, - static::PARAM_OPERATION_NAME => null, - ]; + $data = array_filter($data) + [ + static::PARAM_QUERY => null, + static::PARAM_VARIABLES => null, + static::PARAM_OPERATION_NAME => null, + ]; // Keep a reference to the query-string $qs = $request->query;