一个简单的HTTP库,用于处理请求、响应和头部信息。
dev-main
2024-09-03 15:10 UTC
Requires
- php: >=8.2
- ext-curl: *
- luminar-organization/render-engine: *
Requires (Dev)
- phpunit/phpunit: >=11.3.1
This package is auto-updated.
Last update: 2024-09-03 15:10:54 UTC
README
Luminar HTTP包为PHP中处理HTTP请求和响应提供了一套强大的工具。它包括用于管理请求、会话、Cookie和中间件的类。
安装
您可以通过Composer安装Luminar HTTP。
composer require luminar-organization/http
用法
- 请求处理
use Luminar\Http\Request; $request = new Request($queryParams, $bodyParams, $headers, $method, $uri, $serverParams); $clientIp = $request->getClientIp(); $authHeader = $request->getAuthorizationHeader(); $bearerToken = $request->getBearerToken(); $userAgent = $request->getUserAgent();
- 会话管理
use Luminar\Http\Session\SessionManager; $session = new SessionManager(); $session->set('key', 'value'); $value = $session->get('key'); $session->destroy();
- Cookie管理
use Luminar\Http\Cookie\CookieManager; $cookieManager = new CookieManager(); $cookieManager->set('name', 'value'); $cookieValue = $cookieManager->get('name'); $cookieManager->delete('name');
- 中间件
use Luminar\Http\Middleware\MiddlewareInterface; use Luminar\Http\Response; class ExampleMiddleware implements MiddlewareInterface { public function run(Request $request): Response|null { // Do some your staff for e.g. analytics return null; // return null if you don't want to stop request } }
- 抽象控制器(与我们的渲染引擎一起工作)
use Luminar\Http\Controller\AbstractController; use Luminar\Http\Response; class HomeController extends AbstractController { public function jsonRequest(): Response { return $this->json([ 'Hello' => 'World!' ]); } public function textRequest(): Response { return $this->text("Hello World!"); } public function index() { return $this->render('home/index'); } }