您现在的位置是:首页 > 技术教程 正文

php使用guzzle http发送并发接口请求

admin 阅读: 2024-03-16
后台-插件-广告管理-内容页头部广告(手机)

在 PHP 中, Guzzle 是一个功能强大且流行的 HTTP 客户端,提供了方便的接口来发送 HTTP 请求并处理响应,本人非常喜欢这个包且重度依赖。

以下是使用 Guzzle 发送并发请求的基本示例: 

  1. composer require guzzlehttp/guzzle;
  2. use GuzzleHttp\Client;
  3. use GuzzleHttp\Promise;
  4. $client = new Client();
  5. // 创建多个请求,请求地址可以相同,也可以不同
  6. $promises = [
  7.     $client->getAsync('https://api.example.com/url1'),
  8.     $client->getAsync('https://api.example.com/url2'),
  9.     // 添加更多的请求...
  10. ];
  11. //或者遍历某个二维数组或结果集
  12. foreach($list as $k=>$v) {
  13.     $promises[$k] = $client->getAsync('https://api.example.com/url1');
  14. }
  15. // 发送并发请求,并等待所有请求完成(每个请求之间是异步的,因此效率非常高),返回一个响应数组
  16. $responses = Promise\unwrap($promises);
  17. // 处理响应
  18. foreach ($responses as $k => $response) {
  19.     $result$response->getBody()->getContents();
  20.     // $result即接口返回的body体,{code:0,message:ok,data:{}},可以使用json_decode转一下
  21. }

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索