2017 © Pedro Peláez
 

library http

Fork from vinelab/http with some adjustments for own use.

image

jenchik/http

Fork from vinelab/http with some adjustments for own use.

  • Thursday, June 4, 2015
  • by jenchik
  • Repository
  • 1 Watchers
  • 0 Stars
  • 18 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 31 Forks
  • 0 Open issues
  • 2 Versions
  • 6 % Grown

The README.md

Forked from vinelab/http on github.org

http://Client

A smart and simple HTTP client for sending and recieving JSON and XML., (*1)

Installation

Composer

  • "jenchik/http": "dev-master" for the latest version installation instructions.
// change this to point correctly according
// to your folder structure.
require './vendor/autoload.php';

use Spc\Http\Client as HttpClient;

$client = new HttpClient;

$response = $client->get('echo.jsontest.com/key/value/something/here');

var_dump($response->json());

Laravel

Edit app.php and add 'Spc\Http\HttpServiceProvider', to the 'providers' array., (*2)

It will automatically alias itself as HttpClient so no need to alias it in your app.php, unless you would like to customize it - in that case edit your 'aliases' in app.php adding 'MyHttp' => 'Spc\Http\Facades\Client',, (*3)

Usage

GET

Simple


$response = HttpClient::get('http://example.org'); // raw content $response->content();

With Params


$request = [ 'url' => 'http://somehost.net/something', 'params' => [ 'id' => '12350ME1D', 'lang' => 'en-us', 'format' => 'rss_200' ] ]; $response = HttpClient::get($request); // raw content $response->content(); // in case of json $response->json(); // XML $response->xml();

POST


$request = [ 'url' => 'http://somehost.net/somewhere', 'params' => [ 'id' => '12350ME1D', 'lang' => 'en-us', 'format' => 'rss_200' ] ]; $response = HttpClient::post($request); // raw content $response->content(); // in case of json $response->json(); // XML $response->xml();

Headers

$response = HttpClient::get([
    'url' => 'http://some.where.url',
    'headers' => ['Connection: close', 'Authorization: some-secret-here']
]);

// The full headers payload
$response->headers();

Enforce HTTP Version

HttpClient::get(['version' => 1.1, 'url' => 'http://some.url']);

Raw Content

HttpClient::post(['url' => 'http://to.send.to', 'content' => 'Whatever content here may go!']);

Custom Query String

The content passed in the content key will be concatenated to the URL followed by a ?, (*4)

HttpClient::get(['url' => 'http://my.url', 'content' => 'a=b&c=d']);

It is pretty much the same process with different HTTP Verbs. Supports GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, (*5)

TODO

  • Improve tests to include testing all the methods of response (like statusCode...)
  • Include tests for handling bad data / errors
  • Improve tests to include testing for all HTTP Verbs

The Versions

04/06 2015

dev-master

9999999-dev

Fork from vinelab/http with some adjustments for own use.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Avatar jenchik

laravel api curl json xml http client

04/06 2015

1.3.0

1.3.0.0

Fork from vinelab/http with some adjustments for own use.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Avatar jenchik

laravel api curl json xml http client