kkedzierski / rest-api-client
Rest Api client library to send HTTP requests and retrive response
1.0
2022-01-01 16:10 UTC
Requires (Dev)
- phpunit/phpunit: 9.5
This package is auto-updated.
Last update: 2024-10-29 06:30:50 UTC
README
library to send HTTP requests and retrieve response object
Instalation
To use library in another project write in console:
composer install
composer require kkedzierski/rest-api-client
Usage
After instalation composer requirements to use library at the top of file write
use RestApiClient\RestApiClient;
require_once __DIR__ . './vendor/autoload.php';
And create instance of class with base URI
ex.
$RAC = new RestApiClient("https://api.github.com");
To add to header use addToHeader method,method take two parameters Type and Value
ex.
$rac->addToHeader("User-Agent", "Test REST API Client");
To add additonal parmeters like gets or header create array and add this array as an argument to request methods
ex. array:
$additonalParamArr = [
"header" =>
["User-Agent: Test REST API Client",
"Authorization: token api_token"]
];
To make HTTP Request use methods get, post, put, patch, delete
ex.
$response = $RAC->get('/user/repos');
To specify endpoint to GET PUT PATCH or DELETE method you can use parametr value argument
ex.
$response = $RAC->get('/user/:id/repos', 123);
GET method parameters
- string $resource must start with "/" ex. /products or /products/:id
- string|int $parameterValue parametr required if is specific in resource , default = ''
- array|null $additionalField ex. header, default = null
POST method parameters
- string $resource must start with "/" ex. /products or /products/:id
- array $postData data to send
- array|null $additionalField ex. header, default = null
PUT and PATCH methods parameters
- string $resource must start with "/" ex. /products or /products/:id
- string|int $parameterValue parametr required if is specific in resource , default = ''
- array $updateData data to update
- array|null $additionalField ex. header, default = null
DELETE method parameters
- string $resource must start with "/" ex. /products or /products/:id
- string|int $parameterValue parametr required if is specific in resource , default = ''
- array|null $additionalField ex. header, default = null
every methods return response object with methods
- getUrl();
- getStatusCode();
- getHeader();
- getHeaderLine(string);
- getBody();
- getContent();
Rest Api Clinet object have additional methods:
- getUrl();
- getHeader();
- getHeaderLine(string);
Example usage
<?php
use RestApiClient\RestApiClient;
require_once __DIR__ . './vendor/autoload.php';
$RAC = new RestApiClient("https://api.github.com");
$additonalParamArr = [
"header" =>
["User-Agent: Test REST API Client",
"Authorization: token api_token"]
];
$response = $RAC->get('/user/repos', additionalField: $additonalParamArr);
// or
// $rac->addToHeader("User-Agent", "Test REST API Client");
// $rac->addToHeader("Authorization", "token api_token");
// $response = $RAC->get('/user/repos');
$response->getUrl();
$response->getStatusCode();
$response->getHeader();
$response->getHeaderLine("user-agent");
$response->getBody();
$response->getContent();