Курс Raku / Функційне, конкурентне, реактивне та веб-програмування / Веб-програмування / Віддалені з’єднання / Вправи / Надішліть і отримайте
Розв’язання: Надішліть і отримайте
Ось одне з можливих розв’язань задачі.
Код
my $conn = IO::Socket::INET.new(:host('example.com'), :port(80));
$conn.print("HEAD / HTTP/1.0\r\nHost: example.com\r\n\r\n");
my $response = $conn.recv;
$conn.close;
say $response.lines.first;🦋 Знайдіть програму у файлі send-and-receive.raku.
Вивід
HTTP/1.1 200 OKКоментарі
.printнадсилає запит; рядки протоколу закінчуються на\r\n. ЗапитHEADпросить у сервера лише рядок стану та заголовки, тож відповідь мала..recvчитає відповідь, а.lines.firstбере її перший рядок — рядок стану HTTP.