Reputation: 91
I've got an issue for laravel 5.4 when I trying to using guzzleHttp. here is my code.
use GuzzleHttp\Client;
$url = 'http://example.com';
$client = new Client();
$parameter = ['query' => ['name' => 'xxx', 'address' => 'yyy'], 'headers' => [ 'User-Agent' => 'xxxx', 'exceptions' => false, 'timeout' => 10 ]];
$res = $client->request('GET', $url, $parameter);
if ($res->getStatusCode() == 200)
{
$json = (string)$res->getBody();
return $json;
}
and I've got this error on log: Error Exception: Object of class GuzzleHttp\Psr7\Request could not be converted to string
what is wrong with my code? please kindly help me. fyi, this error not always happen. sometimes it show this error, sometimes success.
thank you
Upvotes: 8
Views: 22098
Reputation: 31
$response = $client->post('http:yanjye.com3', ['phone' => '00','password' => '5555',]);
if ($response->getStatusCode() == 200){
$json = (string)$response->getBody();
return $json;
}
var_dump( $response);
die();
Hello, brother, I think this is the Good way to which is Working On both laravel 5.2[larave 5.2]
i have removed Httm
[laraver 5.2][1]
and use this code :
[1]: https://laravel.com/docs/7.x/http-client`
Upvotes: 0
Reputation: 273
Try this.....
try {
$parameter = ['query' => ['name' => 'xxx', 'address' => 'yyy'], 'headers' => [ 'User-Agent' => 'xxxx', 'exceptions' => false, 'timeout' => 10 ]];
$res = $client->request('GET', $url, $parameter);
if ($res->getStatusCode() == 200)
{
return $res->getBody()->getContents();
}
}catch(Exception $e){
echo 'Caught exception: ', $e->getMessage();
}
Upvotes: 0