1. Go to this page and download the library: Download lukman-ss/http 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/ */
use Lukman\Http\JsonResponse;
use Lukman\Http\Response;
$response = new JsonResponse(['id' => 1, 'name' => 'Lukman'], 201);
$response->content(); // '{"id":1,"name":"Lukman"}'
$response->headers()->get('content-type'); // 'application/json'
$response = Response::json(['error' => 'not found'], 404);
use Lukman\Http\RedirectResponse;
use Lukman\Http\Response;
$response = new RedirectResponse('/dashboard');
$response->headers()->get('location'); // '/dashboard'
$response->status(); // 302
$response = new RedirectResponse('/new-url', 301);
$response = Response::redirect('/login', 302);
use Lukman\Http\MiddlewareInterface;
use Lukman\Http\MiddlewarePipeline;
use Lukman\Http\Request;
use Lukman\Http\RequestHandlerInterface;
use Lukman\Http\Response;
class AuthMiddleware implements MiddlewareInterface
{
public function process(Request $request, RequestHandlerInterface $handler): Response
{
if ($request->header('Authorization') !== 'Bearer secret') {
return new Response('Unauthorized', 401);
}
return $handler->handle($request);
}
}
class FinalHandler implements RequestHandlerInterface
{
public function handle(Request $request): Response
{
return new Response('OK', 200);
}
}
$pipeline = new MiddlewarePipeline([new AuthMiddleware()], new FinalHandler());
$response = $pipeline->handle(Request::capture());