2017 © Pedro Peláez
 

symfony-bundle curl-bundle

Allows you to easily create and execute HTTP Requests with cURL

image

zeroem/curl-bundle

Allows you to easily create and execute HTTP Requests with cURL

  • Thursday, July 17, 2014
  • by zeroem
  • Repository
  • 3 Watchers
  • 13 Stars
  • 22,417 Installations
  • PHP
  • 1 Dependents
  • 1 Suggesters
  • 12 Forks
  • 4 Open issues
  • 4 Versions
  • 0 % Grown

The README.md

RemoteHttpKernel

The RemoteHttpKernel is provided as an alternative to the standard HttpKernel in Symfony. Rather than using the local application, it processes the Request object via cURL, parsing the results into a proper Response object., (*1)

Symfony Installation

First, checkout a copy of the code. Just add the following to the deps file of your Symfony Standard Distribution:, (*2)

[ZeroemCurlBundle]
    git=git://github.com/zeroem/ZeroemCurlBundle.git
    target=/bundles/Zeroem/CurlBundle/

Then add the bundle to your AppKernel and register the namespace with the autoloader:, (*3)

    // app/AppKernel.php
    $bundles = array(
        // ...
        new Zeroem\CurlBundle\ZeroemCurlBundle(),        
        // ...
    );
    // app/autoload.php
    $loader->registerNamespaces(array(
        // ...
        'Zeroem'              => __DIR__.'/../vendor/bundles'
        // ...
    ));

Now use the vendors script to clone the newly added repository into your project:, (*4)

    php bin/vendors install

Composer Installation

Add zeroem/curl-bundle to your composer.json file:, (*5)

{
   ...
   "require": {
   ...
       "zeroem/curl-bundle": ""
   ...
   }
...
}

And include the composer autoloader:, (*6)

require("./vendor/.composer/autoload.php");

Features

RemoteHttpKernel

The RemoteHttpKernel provides the bridge between the the standard Request/Response architecture used by Symfony and the cURL library., (*7)

use Symfony\Component\HttpFoundation\Request;
use Zeroem\CurlBundle\HttpKernel\RemoteHttpKernel;

$request = Request::create("http://www.symfony.com");
$remoteKernel = new RemoteHttpKernel();
$response = $remoteKernel->handle($request);

Caveats

Due to the way the HttpFoundation\Request object generates the Request Uri, any changes made to Request::$query will not be reflected when the cURL request is made. I'm currently looking for a proper solution to this issue., (*8)

RequestGenerator

The RequestGenerator simplifies building multiple, similar cURL Request Objects., (*9)

use Zeroem\CurlBundle\Curl\RequestGenerator;

$generator = new RequestGenerator(array(CURLOPT_RETURNTRANSFER=>true));

// Automatically has CURLOPT_RETURNTRANSFER set to true
$request = $generator->getRequest();

Goals

Provide a clean, Object Oriented solution for interacting with remote HTTP services that doesn't require knowing the ins and outs of all the various cURL api options nor invents it's own HTTP Request/Response architecture., (*10)

Motivation

I was originally looking for a Symfony Bundle that provided an OO interface to the curl_* functions. Along the way, I realized that I didn't actually want a cURL wrapper, I wanted something that could execute HTTP requests and return the result in a meaningful way. So I decided to use the existing Symfony components and build a custom HttpKernelInterprovided, relegating cURL to an implementation detail rather than the purpose of the project., (*11)

The Versions

17/07 2014

dev-master

9999999-dev

Allows you to easily create and execute HTTP Requests with cURL

  Sources   Download

MIT

The Requires

 

The Development Requires

by Darrell Hamilton

curl bundle http symfony httpkernel

17/07 2014

v1.3

1.3.0.0

Allows you to easily create and execute HTTP Requests with cURL

  Sources   Download

MIT

The Requires

 

The Development Requires

by Darrell Hamilton

curl bundle http symfony httpkernel

23/03 2012

v1.2

1.2.0.0

Allows you to easily create and execute HTTP Requests with cURL

  Sources   Download

MIT

The Requires

 

by Darrell Hamilton

curl bundle http symfony httpkernel

10/03 2012

v1.1

1.1.0.0

Allows you to easily create and execute HTTP Requests with cURL

  Sources   Download

MIT

The Requires

 

by Darrell Hamilton

curl http httpkernel