Slide 28
Slide 28 text
use Icicle\Http\Message\BasicResponse;
use Icicle\Http\Message\Request;
use Icicle\Http\Server\RequestHandler;
use Icicle\Socket\Socket;
use Icicle\Stream\MemorySink;
class MyRequestHandler implements RequestHandler
{
public function onRequest(Request $request, Socket $socket): Generator
{
$stream = new MemorySink();
yield from $stream->end("hello world");
yield new BasicResponse(200, [
"Content-Type" => "text/plain",
"Content-Length" => $stream->getLength(),
], $stream);
}
public function onError(int $code, Socket $socket): Generator
{
yield new BasicResponse($code);
}
}