怎么在Laravel中利用GuzzleHttp调用第三方服务API接口

  介绍

这篇文章给大家介绍怎么在Laravel中利用GuzzleHttp调用第三方服务API接口,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

<强>引入安装

在composer.json文件的“要求”项中加入

“GuzzleHttp/guzzle":“^ 6.3“,

然后命令行执行作曲家安装

<强>在项目中的具体用法:

<强> 1,在项目某个地方,我选择的是在app/Http/服务目录下面新建一个APIHelper

& lt; php ?   namespace 应用\ Http \服务;   ,   class  APIHelper   {   ,   ,public  function  post(身体,apiStr美元)   ,{=美元才能client  new  \ GuzzleHttp \客户((& # 39;base_uri& # 39;,=祝辞,& # 39;http://192.168.31.XX: xxx/api/& # 39;]);   时间=美元才能res 客户→美元请求(& # 39;文章# 39;,,apiStr美元,   ,,(& # 39;json # 39;,=祝辞,美元的身体,   ,,& # 39;头# 39;,=祝辞,(   ,,,& # 39;内容类型# 39;=祝辞,& # 39;应用程序/json # 39;//,,,,& # 39;饼干# 39;=祝辞,& # 39;XDEBUG_SESSION=PHPSTORM& # 39;   ,,,“Accept"=在“应用程序/json"】   )才能);   时间=美元才能data 美元res→getBody ()→getContents ();   ,   return 才能;$数据;   ,}   ,   ,public  function 得到(apiStr美元,美元头)   ,{=美元才能client  new  \ GuzzleHttp \客户((& # 39;base_uri& # 39;,=祝辞,& # 39;http://192.168.31.XX: xxx/api/& # 39;]);   时间=美元才能res 客户→美元请求(& # 39;得到# 39;,,apiStr美元[& # 39;头# 39;,=祝辞,$头]);   statusCode=美元才能,res→美元getStatusCode ();   ,   头=美元才能,res→美元getHeader(& # 39;内容类型# 39;);   ,   时间=美元才能data 美元res→getBody ();   ,   return 才能;$数据;   ,}   }

在项目中主要我用的是发布方法,

& # 39;饼干# 39;=祝辞,& # 39;XDEBUG_SESSION=PHPSTORM& # 39;

这一行加进去之后可以使用XDebug进行调试,但是在真正用起来的时候不需要在标题里面加这一行了

如果是调用https接口,如果有证书问题,则加入这两项& # 39;验证# 39;=比;& # 39;/全/路径//cert.pem& # 39;, & # 39;验证# 39;=比;假的,不验证证书。

, public  static  function  post_user(身体,apiStr美元)   ,{,,=美元才能client  new  \ GuzzleHttp \客户((& # 39;验证# 39;,=祝辞,& # 39;/全/路径//cert.pem& # 39;, & # 39; base_uri& # 39;,=祝辞,& # 39;http://xxx.xxx.com/api/& # 39;]);   时间=美元才能res 客户→美元请求(& # 39;文章# 39;,,apiStr美元,   ,,(& # 39;验证# 39;,=祝辞,假的,   ,,,& # 39;json # 39;,=祝辞,美元的身体,   ,,,& # 39;头# 39;,=祝辞,(   ,,,,& # 39;内容类型# 39;=祝辞,& # 39;application/json # 39;】   ,,);   时间=美元才能data 美元res→getBody ()→getContents ();   ,   美元才能响应=json_decode(元数据);   ,   return 才能;$反应;   以前,}

<强> 2,具体在控制器中使用

public  function 指数(Request  $请求)   ,{   时间=美元才能data 美元请求→json ()→();   时间=美元才能body 美元数据;   时间=美元才能apiStr  & # 39;/api/xxx/列表# 39;;   时间=美元才能api  new  APIHelper ();   美元才能res =$ api→post(身体,apiStr美元);   时间=美元才能data  json_decode (res);   美元才能ret=new  RetObject ();   美元才能ret→retCode=& # 39; 0000 & # 39;;   美元才能ret→retMsg=& # 39;成功# 39;;   美元才能ret→数据=https://www.yisu.com/zixun/美元数据;   返回响应()-> json (ret);   }

关于怎么在Laravel中利用GuzzleHttp调用第三方服务API接口就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

怎么在Laravel中利用GuzzleHttp调用第三方服务API接口