leaseweb/guzzle-bundle

此包已被弃用,不再维护。没有建议的替代包。

具有完整Web调试工具栏集成的Guzzle API调用功能

安装数: 44,051

依赖: 0

建议者: 0

安全: 0

星标: 27

关注者: 14

分支: 7

开放问题: 4

类型:symfony-bundle

v1.0.2 2014-03-25 15:38 UTC

This package is not auto-updated.

Last update: 2020-11-13 20:08:56 UTC


README

此存储库不再进行积极维护。我们鼓励您不要使用此代码。如果您依赖此代码,您可能希望将其存储库分支出来,以防止系统在将来删除此存储库时出现故障。

LswGuzzleBundle

screenshot

LswGuzzleBundle 将 Guzzle API 调用功能添加到您的 Symfony2 应用程序中。它易于从代码中使用,并旨在拥有完整的调试功能。

阅读关于 LswGuzzleBundle 的 LeaseWebLabs 博客

阅读 Guzzle 文档

Guzzle API 文档

要求

  • PHP 5.3,支持 cURL
  • Symfony 2.3

安装

安装分为以下步骤

  1. 使用 composer 下载 LswGuzzleBundle
  2. 启用 Bundle
  3. 确保 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 许可证之下。