title: Guzzle returns stream empty body instead of json body
body: <p>When I use Postman to make an API call I receive a JSON object..which is what I expected.<a href="https://i.stack.imgur.com/xPAUt.jpg" rel="noreferrer"><img src="https://i.stack.imgur.com/xPAUt.jpg" alt="enter image description here"></a></p>
  
  <p>However When I make same call with Guzzle like so:</p>
  
  <pre><code>$client = new \GuzzleHttp\Client(['base_uri' =&gt; 'https://api.dev/']);
  
  $response = $client-&gt;request('GET', 'search', [
      'verify' =&gt; false,
  ]);
  
  var_dump($response-&gt;getBody()); //null
  
  var_dump($response); //returns below
  </code></pre>
  
  <p>I get dump below from Guzzle</p>
  
  <pre><code>Response {#304 ▼
    -reasonPhrase: "OK"
    -statusCode: 200
    -headers: array:8 [▼
      "Server" =&gt; array:1 [▶]
      "Content-Type" =&gt; array:1 [▼
        0 =&gt; "application/json"
      ]
      "Transfer-Encoding" =&gt; array:1 [▶]
      "Connection" =&gt; array:1 [▶]
      "Cache-Control" =&gt; array:1 [▶]
      "Date" =&gt; array:1 [▶]
      "X-RateLimit-Limit" =&gt; array:1 [▶]
      "X-RateLimit-Remaining" =&gt; array:1 [▶]
    ]
    -headerNames: array:8 [▼
      "server" =&gt; "Server"
      "content-type" =&gt; "Content-Type"
      "transfer-encoding" =&gt; "Transfer-Encoding"
      "connection" =&gt; "Connection"
      "cache-control" =&gt; "Cache-Control"
      "date" =&gt; "Date"
      "x-ratelimit-limit" =&gt; "X-RateLimit-Limit"
      "x-ratelimit-remaining" =&gt; "X-RateLimit-Remaining"
    ]
    -protocol: "1.1"
    -stream: Stream {#302 ▼
      -stream: stream resource @15 ▼
        wrapper_type: "PHP"
        stream_type: "TEMP"
        mode: "w+b"
        unread_bytes: 0
        seekable: true
        uri: "php://temp"
        options: []
      }
      -size: null
      -seekable: true
      -readable: true
      -writable: true
      -uri: "php://temp"
      -customMetadata: []
    }
  }
  </code></pre>