Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rapira/http


Important

🪞 This is a read-only mirror.

Active development lives in rapira-rs/sdk-php under packages/http/. This repository is automatically synchronized from there on every release.

File issues and pull requests in the main monorepo, not here.

About

Builds a PSR-7 ServerRequestInterface from the shape Rapira hands your worker, with one factory per run mode:

  • SapiRequestFactory — hydrates the request from the PHP superglobals ($_SERVER, $_GET, $_POST, $_FILES), the shape Rapira exposes in classic and worker modes.
  • DispatcherRequestFactory — hydrates it from the Rapira\Http\Exchange the host delivers in dispatcher mode, without touching the superglobals.

Both take PSR-17 factories, so you keep your project's own PSR-7 implementation.

Install

composer require rapira/http

PHP Latest Version on Packagist License Total Downloads

Usage

Classic / worker mode — from the SAPI environment:

use Rapira\Sdk\Http\SapiRequestFactory;

$factory = new SapiRequestFactory(
    $serverRequestFactory, // Psr\Http\Message\ServerRequestFactoryInterface
    $uriFactory,           // Psr\Http\Message\UriFactoryInterface
    $uploadedFileFactory,  // Psr\Http\Message\UploadedFileFactoryInterface
    $streamFactory,        // Psr\Http\Message\StreamFactoryInterface
);

$request = $factory->create();

Dispatcher mode — from the exchange the host delivers:

use Rapira\Sdk\Http\DispatcherRequestFactory;

$factory = new DispatcherRequestFactory(
    $serverRequestFactory,
    $uploadedFileFactory,
    $streamFactory,
);

$request = $factory->create($exchange); // Rapira\Http\Exchange

About

PSR-7 server-request factories for every Rapira run mode (split-published from rapira-rs/sdk-php)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages