朱纯树博客
VPS测评推荐网站
cloudacead cloudacead

PHP Curl扩展Guzzle

PHP Curl扩展Guzzle插图

简介:

Guzzle是一个PHP的HTTP客户端,用来轻而易举地发送请求,并集成到我们的WEB服务上。

特点:

  • 接口简单:构建查询语句、POST请求、分流上传下载大文件、使用HTTP cookies、上传JSON数据等等。
  • 发送同步或异步的请求均使用相同的接口。
  • 使用PSR-7接口来请求、响应、分流,允许你使用其他兼容的PSR-7类库与Guzzle共同开发。
  • 抽象了底层的HTTP传输,允许你改变环境以及其他的代码,如:对cURL与PHP的流或socket并非重度依赖,非阻塞事件循环。
  • 中间件系统允许你创建构成客户端行为。

下载及使用:

推荐使用 Composer 安装Guzzle,Composer是PHP的依赖管理工具,允许你在项目中声明依赖关系,并安装这些依赖。

# 安装 Composer
curl -sS https://getcomposer.org/installer | php

你可以使用composer.phar客户端将Guzzle作为依赖添加到项目:

php composer.phar require guzzlehttp/guzzle:~6.0

发送请求

可以使用Guzzle的 GuzzleHttpClientInterface 对象来发送请求。

创建客户端

use GuzzleHttpClient;

$client = new Client([
    // Base URI is used with relative requests
    'base_uri' => 'http://httpbin.org',
    // You can set any number of default request options.
    'timeout'  => 2.0,
]);

Client对象的方法可以很容易的发送请求:

$response = $client->get('http://httpbin.org/get');
$response = $client->delete('http://httpbin.org/delete');
$response = $client->head('http://httpbin.org/get');
$response = $client->options('http://httpbin.org/get');
$response = $client->patch('http://httpbin.org/patch');
$response = $client->post('http://httpbin.org/post');
$response = $client->put('http://httpbin.org/put');

异步请求:

$promise = $client->getAsync('http://httpbin.org/get');
$promise = $client->deleteAsync('http://httpbin.org/delete');
$promise = $client->headAsync('http://httpbin.org/get');
$promise = $client->optionsAsync('http://httpbin.org/get');
$promise = $client->patchAsync('http://httpbin.org/patch');
$promise = $client->postAsync('http://httpbin.org/post');
$promise = $client->putAsync('http://httpbin.org/put');

带cookie访问的使用示例

use GuzzleHttpClient;
use GuzzleHttpCookieCookieJar;

$client = new GuzzleHttpClient([
	'cookies' => true,
	'verify' => false //关闭验证
]);

$cookieJar = CookieJar::fromArray([
      'cookie参数' => 'value',
      'cookie参数' => 'value',
      'cookie参数' => 'value',
      'cookie参数' => 'value',
      'cookie参数' => 'value',
], 'www.xxx.com');

$res = $client->request('GET', 'https://www.xxx.com', [
    'cookies' => $cookieJar,
])->getBody()->getContents();

官方手册 :   点击访问

-End-

文章来源于互联网:PHP Curl扩展Guzzle

赞(0) 打赏
未经允许不得转载:VPS测评推荐网站 - 朱纯树博客 » PHP Curl扩展Guzzle

评论 46

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #60

    https://sildenafil100mg.store/# sildenafil generic us

    AntonioTot1天前回复