laravel5 и GuzzleHttp


Я использую GuzzleHttp для отправки запроса на внешний api и получения ответа, но возвращаемый ответ пуст из данных. и когда я тестирую uri и параметры в advanced rest client , я получаю данные, так почему же ответ Guzzle пуст?! пожалуйста, помогите мне, если можете.

Вот мой код:

public function index($id)
{
    $client = new Client(['base_uri' => 'http://qpeople.me/']);

    $response=$client->post('profileinfo', [
        'json'=>[
           'tshirtID'=>$id
        ]
        ]);

    $body=$response->getBody();
    dd($body);
    return view('profile');
}

Это и есть ответ. Введите описание изображения здесь

2 2

2 ответа:

Хорошо, я нашел решение, используя cURL для отправки запроса и получения ответа, вот код:

$url = 'http://qpeople.me/profileinfo';
        $data['tshirtID'] =$id;
        $_data = json_encode($data);
        $headers = array(
            'Content-Type: application/json',
            'Content-Length: ' . strlen($_data),
        );

        $curl = curl_init($url);
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $_data);
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $response = curl_exec($curl);

Попробуйте:

$body = (string) $respose - > getBody ();

Dd ($body);