16/10
2016
dev-master
9999999-dev
MIT
The Requires
The Development Requires
Install:, (*2)
composer require adeira/rest-api
Use:, (*3)
extensions: restApi: Adeira\Api\DI\Extension fakeSession: Kdyby\FakeSession\DI\FakeSessionExtension # TODO: remove
Configure:, (*4)
restApi: errorPresenter: 'Api:Error' # custom error presenter for API enableForModules: # for these modules custom error presenter will be used and session will be disabled (TODO: rename) - Api - '' # for destination without module (Homepage:default - TODO: improve) presenterMapping: Api: App\ApiModule\Presenters\*Presenter
Create first REST API endpoint (simple presenter):, (*5)
<?php declare(strict_types = 1); namespace App\Presenters; class UsersPresenter extends \Adeira\Api\RestPresenter { public function readAll() { $this->payload->test = 'ok'; } }
Custom error presenter example (work in progress):, (*6)
<?php declare(strict_types = 1); namespace Adeira\Connector\Presenters; use Nette; class ApiErrorPresenter extends \Adeira\Api\RestPresenter { public function run(Nette\Application\Request $request): Nette\Application\IResponse { $this->payload = new \stdClass; $this->payload->error = [ 'message' => 'Internal Server Error', ]; $this->payload->status = 'error'; return new \Adeira\Api\JsonResponsePretty($this->payload); } }
MIT