Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione web / Stabilire connessioni remote
Aprire un socket
Un socket è una connessione fra due programmi attraverso una
rete. La classe di base di Raku per i socket TCP è
IO::Socket::INET, e per usarla non serve installare nulla
in più.
Per connetterti a un server remoto, crea un socket con l’host e la porta che vuoi raggiungere:
my $conn = IO::Socket::INET.new(:host('raku.org'), :port(80));
say 'connected';
$conn.close;IO::Socket::INET.new apre la connessione all’istante. La
porta 80 è la porta standard per HTTP, quindi questo si
connette al server web di raku.org. Quando hai finito,
.close rilascia la connessione.
Questo esempio ha bisogno di una connessione di rete funzionante per girare. Quando si connette con successo stampa
connected.
La stessa classe si usa in due modalità: come
client, connettendosi verso un server come qui, e come
server, restando in ascolto di connessioni in arrivo
(cosa che vedrai più avanti). Per ora l’idea da portarsi via è che
IO::Socket::INET.new(:host, :port) ti dà un canale a due
vie vivo verso un’altra macchina.
Pratica
Risolvi 1 quiz sul contenuto di questo argomento.
Navigazione del corso
← Stabilire connessioni remote | Quiz — Socket →
💪 Oppure vai direttamente agli esercizi di questa
sezione.