网络编程
位置:首页>> 网络编程>> php编程>> PHP的HTTP客户端Guzzle简单使用方法分析

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

作者:李维山  发布时间:2023-07-16 05:58:56 

标签:PHP,HTTP客户端,Guzzle

本文实例讲述了PHP的HTTP客户端Guzzle简单使用方法。分享给大家供大家参考,具体如下:

首先来一段官方文档对Guzzle的介绍:

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

然后cd到网站根目录,执行Composer命令下载Guzzle:(Linux环境)


composer require guzzlehttp/guzzle

下载完成后会生成一个vender文件夹:

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

在vender同级目录新建了一个guzzle.php来写例子。

【GET请求】


<?php
 require './vendor/autoload.php';

 //实例化客户端
 $client = new GuzzleHttp\Client();

 //构造url
 $url = 'https://www.baidu.com';

 //get请求
 $res = $client->request('GET', $url);

 //返回状态码
 echo $res->getStatusCode();

 //连贯操作
 //$res = $client->request('GET', $url)->getBody()->getContents();
?>

【POST请求】


<?php
 require './vendor/autoload.php';

 //实例化客户端
 $client = new GuzzleHttp\Client();

 //构造url
 $url = 'https://www.baidu.com';

 //post请求
 $res = $client->request('POST', $url, [
   'form_params' => [
     'name'=>'lws',
     'sex'=>'nan'
   ]
 ]);

 //返回状态码
 echo $res->getStatusCode();
?>

【POST文件上传】


<?php
 require './vendor/autoload.php';

 //实例化客户端
 $client = new GuzzleHttp\Client();

 //构造url
 $url = 'https://www.baidu.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();
?>

【设置 * 】


<?php
 require './vendor/autoload.php';

 //实例化客户端
 $client = new GuzzleHttp\Client();

 //构造url
 $url = 'https://www.baidu.com';

 //设置代理请求
 $res = $client->request('GET', $url, [
   'proxy' => '111.22.33.44:6666'
 ]);

 //返回状态码
 echo $res->getStatusCode();
?>

【模拟请求头】


<?php
 require './vendor/autoload.php';

 //实例化客户端
 $client = new GuzzleHttp\Client(['headers'=>['referer'=>'https://www.baidu,com']]);

 //构造url
 $url = 'https://www.baidu.com';

 //设置代理请求
 $res = $client->request('GET', $url);

 //返回状态码
 echo $res->getStatusCode();
?>

【记录Cookie】


<?php
 require './vendor/autoload.php';

 //实例化客户端
 $client = new GuzzleHttp\Client(['cookie'=>true]);

 //构造url
 $url = 'https://www.baidu.com';

 //设置代理请求
 $res = $client->request('GET', $url);

 //返回状态码
 echo $res->getStatusCode();
?>

希望本文所述对大家PHP程序设计有所帮助。

来源:https://blog.csdn.net/msllws/article/details/83862462

0
投稿

猜你喜欢

  • 我一直不很明白在中国国内流行的设计风格,象在国外的很多地方都有鲜明的设计大方向,比如韩国站点设计一般比较花哨,所以动画很多,我们常常看到韩国
  •     CSS的出现使网页制作者在对网页元素的控制方便许多,当然,有利必有弊,CSS只能对颜色、大小、距离等静
  • 应该是开心网(kaixin.com)的宠物功能又升级了,这几次发来的邮件内容不仅不能让我开心,反而让我觉得很恶心。开心网注册也一段时间了,之
  • 前不久,ColourLovers.com公布了一项调查结果。他们发现,美国前100大网站的Logo,主要使用12种颜色。其中,采用蓝色的网站
  • 导言在前面我们学习了如何创建item级的DataList。和可编辑的GridView一样,每个DataList里的item都包含一个Edit
  • asp之家补充两点,以让大家看的更明白:一.什么是GUID?由于水平有限在看到这篇文章时,我并不了解什么是GUID,为了看懂文章当然先请教一
  • J2ME是利用HttpConnection建立HTTP连接,然后获取数据,ASP也是利用HTTP协议,因而可以利用J2ME与ASP建立连接,
  • 这篇文章主要介绍了在SQL Server中处理空值时所涉及的3个问题:计数、使用空表值以及外键处理。用COUNT(*)处理空值大多数集合函数
  • ASP给图片加水印是需要组件的...常用的有aspjpeg软件和中国人自己开发的wsImage软件,可以上网搜索下载这两个软件,推荐使用咱们
  • 本文将介绍在InterDev中实现网上商店购物车功能的方法,具体步骤如下:一、 数据库结构:产品数据表(Products): 存放产品信息产
  • PHP hebrev() 函数实例反向显示希伯来字符:<?php echo hebrev("á &ccedil;ù&
  • jqGrid是一个优秀的基于jQuery的DataGrid框架,想必大伙儿也不陌生,网上基于ASP的资料很少,我提供一个,数据格式是json
  • Oracle提供了不少方法用于数据空间的使用、监控和维护,同时也在各版本中陆续对这方面的功能进行了增强,目的在于简化这方面工作的复杂度,提高
  • 简单计数器代码如下所示:<% Set fs = CreateObject("Scri
  • 在当今企业环境中,保证数据安全不是可有可无的工作。频繁曝光的入侵和欺骗事件、萨班斯&bull;奥克斯利法案、HIPAA法案规定和爱国
  • 就MySQL而言,大多数程序员都不太了解其设计背景,因此当他们尝试创建自己的数据库时,会留下很多漏洞。要想为MySQL数据库进行合适的配置,
  • 一、备份数据库1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server2、SQL Server组-->
  • 当服务器必须提供与两个或更多个网络或网络子网的连接时,典型的方案是使用多宿主计算机。此计算机通常位于外围网络(也称为 DMZ、外围安全区域或
  • 你的主页或者你管理的网站有各种密码需要保护,把密码直接放在数据库或者文件中存在不少安全隐患,所以密码加密后存储是最常见的做法。在ASP.NE
  • TXT文本文件,WORD文档点击后弹出另存为对话框,然后保存下载,而不是在浏览器中打开的asp实现方法,使用了asp中的stream对象,同
手机版 网络编程 asp之家 www.aspxhome.com