lemmon/fetch

JavaScript's fetch() implementation on top of Guzzle

v0.3.0 2019-11-22 16:25 UTC

This package is auto-updated.

Last update: 2024-05-23 02:16:53 UTC


README

Fetch is a tiny function, wrapped around Guzzle, PHP HTTP client. Inspired by Web API fetch() function.

Examples

// plain GET request
$res = fetch('http://uuid.lemmonjuice.com/');
$body = $res->body(); // returns response body
// get JSON data
$json = fetch('http://uuid.lemmonjuice.com/', [
  'headers' => [
    'Accept' => 'application/json',
  ],
])->json();
// POST data
$res = fetch('http://httpbin.org/post', [
  'method' => 'POST',
  'headers' => [
    'Content-Type' => 'application/json',
    'Accept' => 'application/json',
  ],
  'json' => [
    'hello' => 'world',
  ],
]);

Installing Fetch

composer require lemmon/fetch

API

Fetch\Response fetch(string $resource, array $init = NULL)

Parameters

  • $resource - a resource that you wish to fetch (e.g. http://httpbin.org/post)
  • $init (optional) - options array; see Guzzle's Request Options documentation page for more info about available parameters; note: use additional parameter method to define request method; default method is GET

Response

  • ok() - (bool) has response been successful
  • status() - (int) status code
  • statusText() - (string) status text
  • body() - (string) response body
  • json(bool $assoc = FALSE) - JSON parsed response body
  • psr() - (GuzzleHttp\Psr7\Response) Guzzle's PSR-7 response (read more in Guzzle's official documentation)

Read more

  • Guzzle - HTTP client that makes it easy to send HTTP requests and trivial to integrate with web services
  • PSR-7 - HTTP message interfaces
  • fetch() - Web API fetch()

License

MIT