Zttp - 一个基于 Guzzle Http 的更好用的 PHP HTTP Package

栏目: PHP · 发布时间: 9年前

内容简介:Zttp - 一个基于 Guzzle Http 的更好用的 PHP HTTP Package

原文: https://www.laravist.com/blog...

在 PHP 的项目中,如果你需要通过代码来发起 HTTP 请求,相信很多人对 GuzzleHttp 这个 Package 很熟悉,然而其实在使用 Guzzle 的时候,我们依然可以做得更简便一点的,比如我们可以使用 Zttp ,这是基于 Guzzle 的另外一个 HTTP Package。

大致来看看 Zttp 的用法:

1.比如发送一个携带 headers 的 POST 请求:

$response = Zttp::withHeaders(['Fancy' => 'Pants'])->post($url, [
    'foo' => 'bar',
    'baz' => 'qux',
]);

$response->json();

如果你使用 Guzzle 的话,代码可能像下面这样:

$client = new Client();
$response = $client->request('POST', $url, [
    'headers' => [
        'Fancy' => 'Pants',
    ],
    'form_params' => [
        'foo' => 'bar',
        'baz' => 'qux',
    ]
]);

json_decode($response->getBody());

所以这样比较起来,我觉得 Zttp 还是方便,Nice and clean!

2.携带 Form 表单参数的 POST 请求:

$response = Zttp::asFormParams()->post($url, [
    'foo' => 'bar',
    'baz' => 'qux',
]);

3.发起 Patch 请求:

$response = Zttp::patch($this->url('/patch'), [
    'foo' => 'bar',
    'baz' => 'qux',
]);

4.发起 PUT 请求:

$response = Zttp::put($this->url('/put'), [
    'foo' => 'bar',
    'baz' => 'qux',
]);

5.发起 DELETE 请求:

$response = Zttp::delete($this->url('/delete'), [
    'foo' => 'bar',
    'baz' => 'qux',
]);

6.添加一个可接受的 Header:

$response = Zttp::accept('banana/sandwich')->post($url);

7.阻止重定向:

$response = Zttp::withoutRedirecting()->get($url);

你可以看到,上面的这些事例代码其实可以包含了大部分的应用场景,如果说你还需要更复杂的使用方式,你可以到 Github kitetail/zttp 查看;而且,即使你还想使用 Guzzle,你依然是可以使用 Guzzle 的,所以我可以负责任地向大家推荐一下这个 Zttp 的 package.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

C Primer Plus

C Primer Plus

Stephen Prata、云巅工作室 / 云巅工作室 / 人民邮电出版社 / 2005-2-1 / 60.00元

《C Primer Plus(第5版)(中文版)》共17章。第1、2章学习C语言编程所需的预备知识。第3到15章介绍了C语言的相关知识,包括数据类型、格式化输入输出、运算符、表达式、流程控制语句、函数、数组和指针、字符串操作、内存管理、位操作等等,知识内容都针对C99标准;另外,第10章强化了对指针的讨论,第12章引入了动态内存分配的概念,这些内容更加适合读者的需求。第16章和第17章讨论了C预处......一起来看看 《C Primer Plus》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换