简单但已建立/完整的PHP REST客户端?
我希望在PHP中实现一个REST客户机,并且之前一直在使用的是的一个修改版本,这与我想要的非常接近,但我不是在蛋糕上构建,所以这不在列表中 我正在寻找一个REST客户端,它允许我发出基本的REST请求,并返回请求的头/体。可选但需要的功能:简单但已建立/完整的PHP REST客户端?,php,http,rest,Php,Http,Rest,我希望在PHP中实现一个REST客户机,并且之前一直在使用的是的一个修改版本,这与我想要的非常接近,但我不是在蛋糕上构建,所以这不在列表中 我正在寻找一个REST客户端,它允许我发出基本的REST请求,并返回请求的头/体。可选但需要的功能: HTTP基本身份验证 以下重定向 退出并重新请求失败的请求 我通读了一遍,发现了一大堆毫无帮助的答案,其中主要包括“自己编写,不难”或“使用cURL”(即与前一个相同)或“这里有一个代码片段可以做到”(当然不是建立的或健壮的)。是最有潜在帮助的,但它有上
- HTTP基本身份验证
- 以下重定向
- 退出并重新请求失败的请求
有很多高质量的REST服务器库可用-为什么不使用REST客户端?我基本上是在寻找类似的东西,但作为一个客户。(从上面看)看起来很好,而且是最近的,但我只是很惊讶没有比这更成熟的东西。你可以看看,或者甚至是。但是,它们只与HTTP请求/响应过程有关。你可能在寻找更多的东西?REST设计与HTTP协议非常交叉,因此无法在其上构建更多的抽象。中有许多高级功能,但我仍然认为您可以轻松地将其用于最低要求
<?php
// Include the phar and register the autoloader
require 'guzzle.phar';
// Create a client for http://test.com (binding to a host is optional)
$client = new Guzzle\Http\Client('http://test.com');
// Attach the exponential backoff plugin to the client so that requests
// are retried automatically
$client->addSubscriber(Guzzle\Plugin\Backoff\BackoffPlugin::getExponentialBackoff());
// Create and send a GET request to grab the response
$response = $client->get('/foo.json')->send();
// Dump the JSON response data as an array
var_dump($response->json());
cURL相当冗长,PHAR需要大量的设置。如果您想要一个非常简单的REST选项,请尝试以下方法:
打印文件获取内容(“”) 很好的回答,很容易理解。我可以在哪里下载guzzle.phar?链接断开了,但是你可以在这里找到每个版本的guzzle.phar文件:一次投票提醒我,我从来没有接受过这里的答案。在我的问题中,我最终使用了as-link——它做得很好,没有太多的宣传或我没有使用的额外代码。然而,我最终没有实现指数退避——如果我真的需要,我会再看一眼Guzzle。