1. Go to this page and download the library: Download amranich/ajax-router library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
amranich / ajax-router example snippets
uzzleHttp\Psr7\Request;
use GuzzleHttp\Psr7\Response;
use AmraniCh\AjaxRouter\Route;
use AmraniCh\AjaxRouter\Router;
use AmraniCh\AjaxRouter\Dispatcher;
use GuzzleHttp\Psr7\ServerRequest;
use Lazzard\Psr7ResponseSender\Sender;
try {
$request = ServerRequest::fromGlobals();
// the 'X-requested-with' header is commonly used to inform the server that a request
// is sent via the XMLHttpRequest object on the client-side, a lot of JavaScript libraries
// like jQuery already send this header automatically, this check can add a small security
// layer to your app because HTTP headers can be spoofed very easily, so don't count on
// only that check.
if (!$request->hasHeader('X-requested-with')
|| strtolower($request->getHeader('X-requested-with')[0]) !== 'XMLHttpRequest') {
throw new BadRequestException("Accept only AJAX requests.");
}
// to organize your project, you can put your routes in a separate file like in an array
// and $ex->getCode() ?: 500,
['Content-type' => 'application/json'],
json_encode(['message' => $ex->getMessage()])
);
$sender = new Sender;
$sender($response);
}
Route::get('getPost', 'PostController@getPost');
// register the controller class or instance in the router
$router->registerControllers([
PostController::class,
]);
$router->registerControllers([
new PostController($dependencyOne, $dependencyTwo)
]);
$dispatcher->onException(function (\Exception $ex) {
// $ex exception thrown by a route action
});