Cursus Raku / Programmatio functionalis, simultanea, reactiva et retialis / Programmatio retialis / Servitor HTTP simplex
Petitioni respondere
Simul atque cliens se coniunxit, petitionem eius legis et responsum mittis. Pro navigatro retiali, responsum HTTP validum esse debet: linea status, capita optionalia, linea vacua, et deinde corpus.
my $listener = IO::Socket::INET.new(
:listen,
:localhost('127.0.0.1'),
:localport(8080),
);
my $conn = $listener.accept;
my $request = $conn.recv;
$conn.print("HTTP/1.0 200 OK\r\nContent-Type: text/plain\r\n\r\nHello, web!\n");
$conn.close;
$listener.close;Responsum formam petitionis quam in parte clientis vidisti
speculatur. HTTP/1.0 200 OK linea status est,
Content-Type: text/plain caput est, linea vacua
(\r\n\r\n) capita finit, et Hello, web! corpus
est quod navigatrum ostendit.
Curre hoc programma, deinde illud ex alio terminali per
curl pulsa (vel aperi http://127.0.0.1:8080/
in navigatro), et corpus recta in scrinium imprimit:
$ curl http://127.0.0.1:8080/
Hello, web!Hoc unam petitionem tractat et deinde consistit. Ut multis
petitionibus servias, gradus .accept-lege-responde in
anulum involveres, et plerumque unamquamque coniunctionem in filo vel
promisso proprio tractares ne clientes tardi ceteros morarentur. Sed
essentia servitoris retialis exacte haec est: coniunctionem accipe,
petitionem lege, responsum HTTP scribe.
Pagina sequens exacte hoc agit — servitorem qui vivus manet, in anulo unam petitionem post alteram respondens pro eo quod post primam consistit.
Navigatio cursus
← Quiz — Auditio | Multis petitionibus servire →
💪 Vel recta ad exercitationem
huius sectionis i.