nathanmac / laravel-restclient
Simple RestClient for Laravel 4
Installs: 3 172
Dependents: 0
Suggesters: 0
Security: 0
Stars: 29
Watchers: 3
Forks: 17
Open Issues: 2
Requires
- php: >=5.4.0
- lib-curl: *
- illuminate/support: 4.2.*
This package is not auto-updated.
Last update: 2024-12-21 16:51:36 UTC
README
Simple RestClient Package for Laravel 4
Installation
Begin by installing this package through Composer. Edit your project's composer.json
file to require Nathanmac/laravel-restclient
.
"require": {
"nathanmac/laravel-restclient": "dev-master"
}
Next, update Composer from the Terminal:
composer update
Once this operation completes, the final step is to add the service provider. Open app/config/app.php
, and add a new item to the providers array.
'Nathanmac\RestClient\RestClientServiceProvider'
Calling an Endpoint
try { $response = RestClient::get('hostname:port/endpoint'); } catch (Exception $ex) { print "Error: " . $ex->getMessage(); // Error: COULDNT_RESOLVE_HOST }
HTTP Methods
$response = RestClient::get('hostname:port/endpoint'); $response = RestClient::post('hostname:port/endpoint', 'payload data'); $response = RestClient::put('hostname:port/endpoint', 'payload data'); $response = RestClient::delete('hostname:port/endpoint');
Adding HTTP Headers
$headers = array( 'token: SLDKFJLKSDFJSLDFJ', 'other: asfasdfasdf' ); $response = RestClient::get('hostname:port/endpoint', $headers); $response = RestClient::post('hostname:port/endpoint', 'payload data', $headers); $response = RestClient::put('hostname:port/endpoint', 'payload data', $headers); $response = RestClient::delete('hostname:port/endpoint', $headers);
Get the HTTP Status Code
echo "HTTP Status Code: " . $response->getStatusCode(); // HTTP Status Code: 200 echo "HTTP Status Text: " . $response->getStatusText(); // HTTP Status Text: OK
Returning the response content
print $response->getContent();
Returning the response headers
print_r($response->getHeaders());
Returning a specific header
echo "Content-Type: " . $response->getHeader('content_type'); // Content-Type: application/json
Returning the response time (seconds)
echo "Time: " . $response->getTime(); // Time: 0.23453
Adding custom cURL options for every request
At the beginning publish the config file:
php artisan config:publish nathanmac/laravel-restclient
Then edit the options
array in app/config/packages/nathanmac/laravel-restclient/config.php
.