abhilashpujari / php-restservice
Simple PHP Wrapper class for making REST API calls
Requires
- php: >=7.2
- ext-json: *
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
- phpunit/phpunit: ^8
- dev-master
- v2.0.2
- v2.0.1
- v2.0
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0
- dev-renovate/phpunit-phpunit-11.x
- dev-renovate/phpunit-phpunit-9.x
- dev-renovate/actions-cache-4.x
- dev-renovate/actions-checkout-4.x
- dev-renovate/github-super-linter-5.x
- dev-renovate/packagist-guzzlehttp/guzzle-vulnerability
- dev-renovate/actions-checkout-3.x
- dev-renovate/actions-cache-3.x
- dev-renovate/github-super-linter-3.x
- dev-dev
This package is not auto-updated.
Last update: 2024-04-28 03:56:50 UTC
README
Simple PHP Client library that makes it easy to make REST API calls. It uses Guzzle Client as a dependencies
Installation
The recommended way to install this library is through Composer.
# Install Composer curl -sS https://getcomposer.org/installer | php
Next, run the Composer command to install the latest stable version of this library:
php composer.phar require abhilashpujari/php-restservice dev-master
After installing, you need to require Composer's autoloader:
require 'vendor/autoload.php';
You can then later update this library using composer:
php composer.phar update
Usage
1 GET Request
use RestService\RestService; $restService = new RestService(); $response = $restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->get('/posts/1');
2 POST Request
$restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->post('/posts');
3 PUT Request
$restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->put('/posts/1', [ 'id' => 1, 'text' => 'Test' ] );
4 PATCH Request
$restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->patch('/posts/1', [ 'id' => 1, 'text' => 'Test' ] );
5 DELETE Request
$restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->delete('/posts/1');
6 A fire and forget request which is useful in scenario where we fire the request and aren't concerned of the response, it can be done by setting setIsFireAndForget(true)
$restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->setIsFireAndForget(true) ->post('/posts');
7 Request with some custom headers, , it can be done by setting setRequestHeaders(headers array)
$restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->setRequestHeaders([ 'auth' => 'somevalue' ]) ->post('/posts');
8 Request in which we need the response data which includes status code, headers, body etc, which can be done by setting request method 4th parameter to false
$response = $restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->get('/posts/1', [], [], false); var_dump($response->getHeaders()); var_dump($response->getBody());
9 PURGE Request (Can be used for cache invalidation Eg:: varnish, nginx cache)
use RestService\RestService; $restService = new RestService(); $response = $restService ->setEndpoint('https://jsonplaceholder.typicode.com') ->purge('/posts/1');
License
This project is licensed under the MIT License