leaseweb / guzzle-bundle
此包已被弃用,不再维护。没有建议的替代包。
具有完整Web调试工具栏集成的Guzzle API调用功能
v1.0.2
2014-03-25 15:38 UTC
Requires
- php: >=5.3.2
- guzzle/guzzle: *
- symfony/framework-bundle: >=2.1
This package is not auto-updated.
Last update: 2020-11-13 20:08:56 UTC
README
此存储库不再进行积极维护。我们鼓励您不要使用此代码。如果您依赖此代码,您可能希望将其存储库分支出来,以防止系统在将来删除此存储库时出现故障。
LswGuzzleBundle
LswGuzzleBundle 将 Guzzle API 调用功能添加到您的 Symfony2 应用程序中。它易于从代码中使用,并旨在拥有完整的调试功能。
阅读关于 LswGuzzleBundle 的 LeaseWebLabs 博客
要求
- PHP 5.3,支持 cURL
- Symfony 2.3
安装
安装分为以下步骤
- 使用 composer 下载 LswGuzzleBundle
- 启用 Bundle
- 确保 PHP 中的 cURL 模块已启用
步骤 1:使用 composer 下载 LswGuzzleBundle
在您的 composer.json 中添加 LswGuzzleBundle
{ "require": { "leaseweb/guzzle-bundle": "*", ... } }
现在运行以下命令告诉 composer 下载包
$ php composer.phar update leaseweb/guzzle-bundle
Composer 将将包安装到您的项目的 vendor/leaseweb
目录中。
步骤 2:启用 Bundle
在内核中启用 Bundle
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Lsw\GuzzleBundle\LswGuzzleBundle(), ); }
步骤 3:确保 PHP 中的 cURL 模块已启用
在基于 Debian 的发行版(如 Ubuntu)上,该软件包名为 "php5-curl",可以使用以下命令安装
$ sudo apt-get install php5-curl $ sudo service apache2 restart
在基于 RedHat 的发行版(如 CentOS)上,该软件包名为 "php-curl",可以使用以下命令安装
$ sudo yum install php-curl $ sudo service httpd restart
要检查此,创建并运行一个包含以下内容的 PHP 文件
<?php phpinfo() ?>
它应该显示 "cURL 支持选项" 设置为 "启用"。
如果 PHP 中启用了 CURL 支持,此包也应该在 Windows 安装上工作。
配置
这是基于服务描述(包括 cURL 选项)的 Guzzle 客户端的一个示例
lsw_guzzle:
clients:
test:
config:
json_objects: true
curl.options:
CURLOPT_CONNECTTIMEOUT: 10
CURLOPT_SSL_VERIFYPEER: false
CURLOPT_USERAGENT: "LeaseWeb API Caller"
CURLOPT_FOLLOWLOCATION: true
CURLOPT_SSLVERSION: 3
description:
baseUrl: "http://sf2testproject.dev"
operations:
test:
httpMethod: "GET"
uri: "/app_dev.php/demo/?a=b"
json:
httpMethod: "GET"
uri: "/app_dev.php/demo/json"
json_post:
httpMethod: "POST"
uri: "/app_dev.php/demo/{action}"
parameters:
testvalue:
location: xml
action:
location: uri
用法
这是如何消费所描述的服务命令的方式
$response = $this->get('guzzle.test')->getCommand('test')->execute();
$response = $this->get('guzzle.test')->getCommand('json')->execute();
$response = $this->get('guzzle.test')->getCommand('json_post',array('action'=>'json','testvalue'=>666))->execute();
许可证
此包处于 MIT 许可证之下。