亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Laravel中利用GuzzleHttp調用第三方服務API接口

發布時間:2021-03-23 16:17:59 來源:億速云 閱讀:532 作者:Leah 欄目:開發技術

這篇文章給大家介紹怎么在Laravel中利用GuzzleHttp調用第三方服務API接口,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

引入安裝

在composer.json文件的“require”項中加入

"guzzlehttp/guzzle": "^6.3",

然后命令行執行composer install

在項目中的具體用法:

1、在項目某個地方,我選擇的是在app/Http/Services目錄下面新建一個APIHelper

<?php
namespace App\Http\Services;
 
class APIHelper
{
 
 public function post($body,$apiStr)
 {
  $client = new \GuzzleHttp\Client(['base_uri' => 'http://192.168.31.XX:xxx/api/']);
  $res = $client->request('POST', $apiStr,
   ['json' => $body,
   'headers' => [
    'Content-type'=> 'application/json',
//    'Cookie'=> 'XDEBUG_SESSION=PHPSTORM',
    "Accept"=>"application/json"]
  ]);
  $data = $res->getBody()->getContents();
 
  return $data;
 }
 
 public function get($apiStr,$header)
 {
  $client = new \GuzzleHttp\Client(['base_uri' => 'http://192.168.31.XX:xxx/api/']);
  $res = $client->request('GET', $apiStr,['headers' => $header]);
  $statusCode= $res->getStatusCode();
 
  $header= $res->getHeader('content-type');
 
  $data = $res->getBody();
 
  return $data;
 }
}

在項目中主要我用的是post方法,

'Cookie'=> 'XDEBUG_SESSION=PHPSTORM',

這一行加進去之后可以使用XDebug進行調試,但是在真正用起來的時候不需要在header里面加這一行了

如果是調用https接口,如果有證書問題,則加入這兩項'verify' => '/full/path/to/cert.pem','verify' => false,不驗證證書。

 public static function post_user($body,$apiStr)
 {  
  $client = new \GuzzleHttp\Client(['verify' => '/full/path/to/cert.pem','base_uri' => 'http://xxx.xxx.com/api/']);
  $res = $client->request('POST', $apiStr,
   ['verify' => false,
    'json' => $body,
    'headers' => [
     'Content-type'=> 'application/json']
   ]);
  $data = $res->getBody()->getContents();
 
  $response=json_decode($data);
 
  return $response;
 }

2、具體在Controller中使用

public function index(Request $request)
 {
  $data = $request->json()->all();
  $body = $data;
  $apiStr = '/api/xxx/list';
  $api = new APIHelper();
  $res =$api->post($body,$apiStr);
  $data = json_decode($res);
  $ret=new RetObject();
  $ret->retCode='0000';
  $ret->retMsg='Success';
  $ret->data=$data;
  return response()->json($ret);
 }

關于怎么在Laravel中利用GuzzleHttp調用第三方服務API接口就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

廊坊市| 诸城市| 锡林浩特市| 上栗县| 读书| 曲沃县| 临澧县| 晴隆县| 沙雅县| 台中市| 洛浦县| 九龙坡区| 凤山县| 荆门市| 于都县| 友谊县| 镇康县| 萍乡市| 阿克苏市| 桃园市| 长乐市| 中方县| 柳林县| 灌云县| 白朗县| 呼伦贝尔市| 京山县| 襄城县| 陇川县| 沐川县| 洛浦县| 东乡| 原平市| 信丰县| 九寨沟县| 台北县| 社会| 霍城县| 合山市| 渑池县| 万盛区|