@@ -136,32 +136,46 @@ public function getFileParams();
136136    /** 
137137     * Retrieve any parameters provided in the request body. 
138138     * 
139-      * If the request body can be deserialized to an array, this method MAY be  
140-      * used to retrieve them . 
139+      * If the request Content-Type is application/x-www-form-urlencoded and the  
140+      * request method is POST, this method MUST return the contents of $_POST . 
141141     * 
142-      * @return array The deserialized body parameters, if any. 
142+      * Otherwise, this method may return any results of deserializing 
143+      * the request body content; as parsing returns structured content, the 
144+      * potential types MUST be arrays or objects only. A null value indicates 
145+      * the absence of body content. 
146+      * 
147+      * @return null|array|object The deserialized body parameters, if any. 
148+      *     These will typically be an array or object. 
143149     */ 
144-     public  function  getBodyParams ();
150+     public  function  getParsedBody ();
145151
146152    /** 
147153     * Create a new instance with the specified body parameters. 
148154     * 
149-      * These MAY be injected during instantiation from PHP's $_POST 
150-      * superglobal. The data IS NOT REQUIRED to come from $_POST, but MUST be 
151-      * an array. This method can be used during the request lifetime to inject 
152-      * parameters discovered and/or deserialized from the request body; as an 
153-      * example, if content negotiation determines that the request data is 
154-      * a JSON payload, this method could be used to inject the deserialized 
155-      * parameters. 
155+      * These MAY be injected during instantiation. 
156+      * 
157+      * If the request Content-Type is application/x-www-form-urlencoded and the 
158+      * request method is POST, use this method ONLY to inject the contents of 
159+      * $_POST. 
160+      * 
161+      * The data IS NOT REQUIRED to come from $_POST, but MUST be the results of 
162+      * deserializing the request body content. Deserialization/parsing returns 
163+      * structured data, and, as such, this method ONLY accepts arrays or objects, 
164+      * or a null value if nothing was available to parse. 
165+      * 
166+      * As an example, if content negotiation determines that the request data 
167+      * is a JSON payload, this method could be used to create a request 
168+      * instance with the deserialized parameters. 
156169     * 
157170     * This method MUST be implemented in such a way as to retain the 
158171     * immutability of the message, and MUST return a new instance that has the 
159172     * updated body parameters. 
160173     * 
161-      * @param array $params The deserialized body parameters. 
174+      * @param null|array|object $data The deserialized body data. This will 
175+      *     typically be in an array or object. 
162176     * @return self 
163177     */ 
164-     public  function  withBodyParams ( array   $ params 
178+     public  function  withParsedBody ( $ data 
165179
166180    /** 
167181     * Retrieve attributes derived from the request. 
0 commit comments