Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
397 views
in Technique[技术] by (71.8m points)

guzzle client throws exception in laravel

I am trying to make a http post request in laravel as below

$client = new Client(['debug'=>true,'exceptions'=>false]);
  $res = $client->request('POST', 'http://www.myservice.com/find_provider.php',  [
            'form_params' => [
                'street'=> 'test',
                'apt'=> '',
                'zip'=> 'test',
                'phone'=> 'test',
            ]
        ]);

It return empty response. On debugging ,following exception is occurring

curl_setopt_array(): cannot represent a stream of type Output as a STDIO FILE*

I am using latest version of guzzle.

Any idea how to solve it?.

question from:https://stackoverflow.com/questions/66055725/guzzle-loading-for-ever-when-fetching-api

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The request() method is returning a GuzzleHttpPsr7Response object. To get the actual data that is returned by your service you should use:

$data = $res->getBody()->getContents();

Now check what you have in $data and if it corresponds to the expected output.

More information on using Guzzle Reponse object here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...