ApiController extends Controller
Base class to inherit your controllers from that are used for RESTful APIs
Tags
Table of Contents
- $appName : string
- app name
- $request : IRequest
- current request
- $corsAllowedHeaders : mixed
- $corsMaxAge : mixed
- $corsMethods : mixed
- $responders : array
- __construct() : mixed
- constructor of the controller
- buildResponse() : Response
- Serializes and formats a response
- getResponderByHTTPHeader() : string
- Parses an HTTP accept header and returns the supported responder type
- preflightedCors() : mixed
- This method implements a preflighted cors response for you that you can link to for the options request
- registerResponder() : mixed
- Registers a formatter for a type
Properties
$appName
app name
protected
string
$appName
Tags
$request
current request
protected
IRequest
$request
Tags
$corsAllowedHeaders
private
mixed
$corsAllowedHeaders
$corsMaxAge
private
mixed
$corsMaxAge
$corsMethods
private
mixed
$corsMethods
$responders
private
array
$responders
Tags
Methods
__construct()
constructor of the controller
public
__construct(string $appName, IRequest $request[, string $corsMethods = 'PUT, POST, GET, DELETE, PATCH' ][, string $corsAllowedHeaders = 'Authorization, Content-Type, Accept' ][, int $corsMaxAge = 1728000 ]) : mixed
Parameters
- $appName : string
-
the name of the app
- $request : IRequest
-
an instance of the request
- $corsMethods : string = 'PUT, POST, GET, DELETE, PATCH'
-
comma separated string of HTTP verbs which should be allowed for websites or webapps when calling your API, defaults to 'PUT, POST, GET, DELETE, PATCH'
- $corsAllowedHeaders : string = 'Authorization, Content-Type, Accept'
-
comma separated string of HTTP headers which should be allowed for websites or webapps when calling your API, defaults to 'Authorization, Content-Type, Accept'
- $corsMaxAge : int = 1728000
-
number in seconds how long a preflighted OPTIONS request should be cached, defaults to 1728000 seconds
Tags
Return values
mixed —buildResponse()
Serializes and formats a response
public
buildResponse(mixed $response[, string $format = 'json' ]) : Response
Parameters
- $response : mixed
-
the value that was returned from a controller and is not a Response instance
- $format : string = 'json'
-
the format for which a formatter has been registered
Tags
Return values
Response —getResponderByHTTPHeader()
Parses an HTTP accept header and returns the supported responder type
public
getResponderByHTTPHeader(string $acceptHeader[, string $default = 'json' ]) : string
Parameters
- $acceptHeader : string
- $default : string = 'json'
Tags
Return values
string —the responder type
preflightedCors()
This method implements a preflighted cors response for you that you can link to for the options request
public
preflightedCors() : mixed
Tags
Return values
mixed —registerResponder()
Registers a formatter for a type
protected
registerResponder(string $format, Closure $responder) : mixed
Parameters
- $format : string
- $responder : Closure