php – Laravel Guzzle不起作用,但Curl确实如此
发布时间:2020-12-14 19:34:55 所属栏目:大数据 来源:网络整理
导读:我正在使用 Guzzle来处理外部API. 我这样使用它: $client = new Client;$request = $client-request('GET','https://api.callrail.com/v1/companies.json',[ 'headers' = [ 'Authorization' = 'Token token="my_api_string"' ]]);return dd($request); 这是
我正在使用
Guzzle来处理外部API.
我这样使用它: $client = new Client; $request = $client->request('GET','https://api.callrail.com/v1/companies.json',[ 'headers' => [ 'Authorization' => 'Token token="my_api_string"' ] ]); return dd($request); 这是输出 Stream {#255 ▼ -stream: stream resource @280 ?} -size: null -seekable: true -readable: true -writable: true -uri: "php://temp" -customMetadata: [] } 但是当我像这样使用卷曲时 $api_key = 'my_api_string'; $ch = curl_init($api_url); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_HTTPHEADER,array("Authorization: Token token="{$api_key}"")); $json_data = curl_exec($ch); return dd($json_data); 输出看起来像预期的那样 {"page":1,"per_page":100,"total_pages":1,"total_records":11,.... .... 我对Guzzle做错了什么? 解决方法
您已正确设置Guzzle请求,您只需要在检索后使用$request执行更多操作.
在您的请求后添加此行: $result = json_decode($request-> getBody()); 将其添加到您的代码中它将如下所示: $client = new Client; $request = $client->request('GET',[ 'headers' => [ 'Authorization' => 'Token token="my_api_string"' ] ]); $result = json_decode($request->getBody()); return dd($result); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |