加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP的HTTP客户端Guzzle简单运用方法分析

发布时间:2022-06-25 10:49:40 所属栏目:PHP教程 来源:互联网
导读:这篇文章主要介绍了PHP的HTTP客户端Guzzle简单使用方法,结合实例形式分析了Guzzle的功能、请求、cookie操作等相关实现技巧,需要的朋友可以参考下。 本文实例讲述了PHP的HTTP客户端Guzzle简单使用方法,分享给大家供大家参考,具体如下: 首先来一段官方文
  这篇文章主要介绍了PHP的HTTP客户端Guzzle简单使用方法,结合实例形式分析了Guzzle的功能、请求、cookie操作等相关实现技巧,需要的朋友可以参考下。
 
  本文实例讲述了PHP的HTTP客户端Guzzle简单使用方法,分享给大家供大家参考,具体如下:
 
  首先来一段官方文档对Guzzle的介绍:
 
  然后cd到网站根目录,执行Composer命令下载Guzzle:(Linux环境)
 
  composer require guzzlehttp/guzzle
 
  下载完成后会生成一个vender文件夹:
 
  PHP的HTTP客户端Guzzle简单使用方法分析
 
  在vender同级目录新建了一个guzzle.php来写例子。
 
  【GET请求】
 
    require './vendor/autoload.php';
     
    //实例化客户端
    $client = new GuzzleHttpClient();
     
    //构造url
    $url = 'https://www.phpfensi.com';
     
    //get请求
    $res = $client->request('GET', $url);
     
    //返回状态码
    echo $res->getStatusCode();
     
    //连贯操作
    //$res = $client->request('GET', $url)->getBody()->getContents();
   ?>
    require './vendor/autoload.php';
  
    //实例化客户端
    $client = new GuzzleHttpClient();
  
    //构造url
    $url = 'https://www.phpfensi.com';
  
    //get请求
    $res = $client->request('GET', $url);
  
    //返回状态码
    echo $res->getStatusCode();
  
    //连贯操作
    //$res = $client->request('GET', $url)->getBody()->getContents();
   ?>
  【POST请求】
 
    require './vendor/autoload.php';
     
    //实例化客户端
    $client = new GuzzleHttpClient();  
     
    //构造url
    $url = 'https://www.phpfensi.com';
     
    //post请求
    $res = $client->request('POST', $url, [
      'form_params' => [
        'name'=>'lws',
        'sex'=>'nan'
      ]
    ]);
     
    //返回状态码
    echo $res->getStatusCode();
  ?>
  【POST文件上传】
 
    require './vendor/autoload.php';
     
    //实例化客户端
    $client = new GuzzleHttpClient();  
     
    //构造url
    $url = 'https://www.phpfensi.com';
     
    //post请求
    $res = $client->request('POST', $url, [
      'multipart' => [
        [
       'name'=>'name',
          'contents'=>'lws'
        ],
        [
       'name'=>'sex',
          'contents'=>'nan'
        ],
        [
       'name'=>'tupian',
          'contents'=>file_get_contents('1.jpg'),
          'filename'=>'lws.jpg'
        ]
      ]
    ]);
     
    //返回状态码
    echo $res->getStatusCode();
  ?>
  【设置代理IP】
 
    require './vendor/autoload.php';
     
    //实例化客户端
    $client = new GuzzleHttpClient();  
     
    //构造url
    $url = 'https://www.phpfensi.com';
     
    //设置代理请求
    $res = $client->request('GET', $url, [
      'proxy' => '111.22.33.44:6666'
    ]);
     
    //返回状态码
    echo $res->getStatusCode();
  ?>
  【模拟请求头】
 
    require './vendor/autoload.php';
     
    //实例化客户端
    $client = new GuzzleHttpClient(['headers'=>['referer'=>'https://www.phpfensi,com']]);  
     
    //构造url
    $url = 'https://www.phpfensi.com';
     
    //设置代理请求
    $res = $client->request('GET', $url);
     
    //返回状态码
    echo $res->getStatusCode();
  ?>
  【记录Cookie】
 
    require './vendor/autoload.php';
     
    //实例化客户端
    $client = new GuzzleHttpClient(['cookie'=>true]);  
     
    //构造url
    $url = 'https://www.phpfensi.com';
     
    //设置代理请求
    $res = $client->request('GET', $url);
     
    //返回状态码
    echo $res->getStatusCode();
  ?>。
 

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读