Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.41 KB

README.md

File metadata and controls

43 lines (30 loc) · 1.41 KB

HalGuzzleResponse

Scrutinizer Code Quality Build Status

Guzzle event subscriber to decorate responses to provide Hal resources.

If you register the listener it will decorate the responses from Guzzle giving them a hal method. This will return a Nocarrier\Hal resource created from the response body.

Installation

Require the extension:

$ composer require rmiller/hal-guzzle-response:~0.1

Usage

Attach the listener:

$client = new \GuzzleHttp\Client();
$emitter = $client->getEmitter();
$subscriber = new \RMiller\HalGuzzleResponse\GuzzleSubscriber();
$emitter->attach($subscriber);

Get the Hal resource from the response:

$response = $client->get($url);
$hal = $response->hal(); //\Nocarrier\Hal

Note: an attempt will be made to convert the response body from JSON and XML to a Hal resource. If neither is successful a \RuntimeException will be thrown. This happens when hal is called, so it is safe to wrap other responses and not call hal.