ReactorX
1.0.0
Instale o projeto com compositor
composer require reactorx/reactorx:dev-masterCrie um arquivo de entrada, configure e inicie o servidor
<?php
use ReactorX HttpKernel ;
use ReactorX HttpKernelConfiguration ;
// Don't forget the autoloader
require_once __DIR__ . ' /vendor/autoload.php ' ;
$ config = new HttpKernelConfiguration (
// Scan the classes in the "./src" directory
projectDir: __DIR__ . " /src "
);
// Create the server and pass it the configuration
$ server = HttpKernel:: createServer ( $ config );
$ server -> run (); Em qualquer lugar do diretório src , crie uma classe PingController.php .
O processo de inicialização captará automaticamente a classe e a registrará no contêiner DI como um controlador.
<?php
use ReactorX Attributes { Controller , HttpGet };
use React Http Message Response ;
#[Controller]
final class PingController
{
#[HttpGet( " ping " )]
public final function ping (): Response
{
return new Response (
200 ,
[ ' Content-Type ' => ' text/plain ' ],
" pong "
);
}
} Agora enviar um pedido para /ping deve responder com "pong"
GET http://localhost:3000/ping