Metody żądań
Lekcja 21 z 47 w kursie Sieci komputerowe w terminalu w Coddy.
Metoda określa, jaki rodzaj operacji chcesz wykonać. Cztery metody obejmują niemal wszystko:
- GET: podaj mi tę rzecz. Niczego nie zmienia.
- POST: oto dane, zrób z nimi coś.
- PUT: zapisz to dokładnie w tym miejscu.
- DELETE: usuń to.
GET jest bezpieczny: nie powinien nigdy niczego zmieniać na serwerze, dlatego przeglądarka może pobrać stronę dwa razy bez pytania o zgodę. Dlatego też link, który coś usuwa, jest błędem projektowym, ponieważ każda rzecz, która podąża za linkami, może go uruchomić.
Serwer może odmówić obsługi metody, której nie implementuje, i informuje o tym kodem statusu, a nie komunikatem o błędzie. Na przykład prosty serwer plików w Pythonie obsługuje GET i HEAD i nic więcej.
curl wysyła GET, chyba że polecono mu inaczej. -X zmienia metodę.
Wyzwanie
ŚredniPoproś serwer o wykonanie czegoś, czego nie obsługuje, i odczytaj jego odpowiedź.
Serwer plików Pythona rozumie tylko GET i HEAD. Udostępnij folder na porcie 9111, a następnie wyślij do niego żądanie POST i wypisz tylko numeryczny kod statusu, który zwróci.
Oczekiwany wynik:
501501 oznacza „nie zaimplementowano”.
-o /dev/nullodrzuca treść odpowiedzi, a-w "%{http_code}"wypisuje kod.
Spróbuj swoich 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
5HTTP od podstaw
Budowa żądaniaMetody żądańKody statusuNagłówki odpowiedziTworzenie odpowiedziPodsumowanie: podstawy HTTP3Porty i gniazda
Czym jest portDobrze znane portyLocalhostNasłuchiwanie a łączeniePodsumowanie: porty6curl od podstaw do zaawansowania
Wyświetlanie nagłówkówZapisywanie odpowiedziWłasne nagłówkiStatus i czasKody zakończenia curlPodsumowanie: flagi curl9Uwierzytelnianie i debugowanie
Klucze API i BearerUser AgentLimity czasu i ponowieniaAnaliza błęduPodsumowanie: debugowaniePoćwicz samodzielnie: Edytor online Terminal