Skip to content

iSize1ce/apiate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Apiate

Request Handlers

  • ClosureHandler
new ClosureHandler(function(Request $request) {
    return new Response();
}));
  • ControllerHandler
class Controller {
    public function methodName(Request $request) {
        return new Response('Hello World!');
    }
}

new ClosureHandler(Controller::class, 'methodName');
  • RouteHandler
class MyRequestHandler implements RouteRequestHandler {
    public function __construct(Request $request) {
        $this->text = $request->request->get('text', 'empty');
    }
    
    public function handle() {
        return new Response('Hello World!');
    }
}

new ClosureHandler(RouteController::class);

Namespaces

$routeProvider->namespace('/path', function(RequestProvider $pathRoutes) {
    $pathRoutes->get('/', SomeHandler);
    $pathRoutes->post('/', SomeHandler);
    
    $routeProvider->namespace('/anotherPath', function(RequestProvider $pathRoutes) {
        $pathRoutes->put('/', SomeHandler);
        $pathRoutes->delete('/', SomeHandler);
    }
}));

Path regex

$routeProvider->get('/api/{uriParameterNameWithRegex=\d+}/{randomUriParameterWithoutRegex}', SomeHandler);

About

Lightweight HTTP microframework

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages