| Install | |
|---|---|
composer require devfactory/api |
|
| Latest Version: | 1.0.5 |
| PHP: | >=5.4.0 |
Helpers to create an API for laravel 4.2
This module handle json and xml as response
##How to setup
update composer.json file:
{
"require": {
"devfactory/api": "1.0.*"
}
}
and run composer update from terminal to download files.
update app.php file in app/config directory:
'providers' => array(
'Devfactory\Api\ApiServiceProvider',
),
alias => array(
'API' => 'Devfactory\Api\Facades\ApiFacade',
),
##Configuration
php artisan config:publish devfactory/api
##How to use api in your route
the param {format} are not mandatory
Route::group(array('prefix' => 'v1'), function()
{
Route::get('foo.{format}', 'ApiV1\FooController@foo');
Route::post('bar.{format}', 'ApiV1\FooController@bar');
});
Route::group(array('prefix' => '{format}/v1'), function()
{
Route::get('foo', 'ApiV1\FooController@foo');
Route::post('bar', 'ApiV1\FooController@bar');
});
In you controller you can use
return Response::api(array("foo" => "bar"), 404);
return Response::api(array("ok"));
or
return API::createResponse(array("foo" => "bar"), 404);
return API::createResponse(array("ok"));
##To call your service you can use the Facade
API::get('v1/foo.json', array('foo' => 'bar'));
API::post('v1/bar.xml', array('foo' => 'bar'));
API::put('v1/bar.xml', array('foo' => 'bar'));