diff --git a/flight/net/Request.php b/flight/net/Request.php index 1947b37..81c64a3 100644 --- a/flight/net/Request.php +++ b/flight/net/Request.php @@ -28,7 +28,8 @@ use flight\util\Collection; * type - The content type * length - The content length * query - Query string parameters - * data - Post parameters + * data - Post parameters + * json - JSON decoded body for application/json requests * cookies - Cookie parameters * files - Uploaded files */ @@ -98,6 +99,11 @@ class Request { */ public $data; + /** + * @var \flight\util\Collection JSON decoded body + */ + public $json; + /** * @var \flight\util\Collection Cookie parameters */ @@ -178,6 +184,14 @@ class Request { $this->query->setData($_GET); } + + if ($this->type == 'application/json' && $this->body != '') + { + $v = json_decode($this->body, true); + if ($v) { + $this->json = /*new Collection(*/$v;//); + } + } } /**