Menu
CoddyTech

Budowa żądania

Lekcja 20 z 47 w kursie Sieci komputerowe w terminalu w Coddy.

Pod curl żądanie HTTP to zwykły tekst wysyłany przez gniazdo. Zaczyna się od jednego wiersza określającego, czego chcesz:

GET /index.html HTTP/1.1

Trzy części: metoda (rodzaj operacji), ścieżka (który zasób) i wersja. Następnie pojawiają się nagłówki, po jednym w każdym wierszu, potem pusty wiersz, a na końcu opcjonalne ciało.

Pusty wiersz nie jest ozdobą. Dzięki niemu serwer wie, że nagłówki się skończyły i zaczyna się treść żądania, jeśli istnieje. Żądanie bez niego zawiesza się, ponieważ serwer wciąż czeka na dalszą część.

Możesz wysłać go ręcznie. nc otwiera surowe połączenie, a wszystko, co do niego wpiszesz, trafia bezpośrednio do sieci:

printf 'GET / HTTP/1.0\r\n\r\n' | nc 127.0.0.1 9110

\r\n to znak końca wiersza wymagany przez HTTP, a podwojony oznacza pusty wiersz.

challenge icon

Wyzwanie

Trudny

Całkowicie pomiń curl i komunikuj się bezpośrednio przez HTTP.

  1. Utwórz plik index.html zawierający raw
  2. Udostępnij folder na porcie 9110
  3. Wyślij surowe żądanie GET /index.html HTTP/1.0 przez nc i wyświetl tylko pierwszy wiersz odpowiedzi

Ten pierwszy wiersz to wiersz statusu serwera. Oczekiwany wynik:

HTTP/1.0 200 OK

Pamiętaj o pustym wierszu: printf 'GET /index.html HTTP/1.0\r\n\r\n'.

Spróbuj swoich sił

Terminal
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Sieci komputerowe w terminalu

Poćwicz samodzielnie: Edytor online Terminal