Podsumowanie: zapisywanie danych
Lekcja 37 z 47 w kursie Sieci komputerowe w terminalu w Coddy.
Wysyłanie danych sprowadza się do trzech decyzji.
Jaka metoda. -d automatycznie ustawia metodę POST; -X ustawia dowolną inną. POST wysyła dane, PUT zapisuje je w określonej lokalizacji, DELETE je usuwa.
Jaka jest treść żądania. -d 'a=1&b=2' służy do danych formularza, a ciąg JSON do API. Użyj --data-urlencode w przypadku wszystkiego, co wpisał człowiek.
Jak ją oznaczasz. curl zakłada kodowanie formularzowe, jeśli nie określisz inaczej, więc JSON wymaga -H 'Content-Type: application/json'. Zapomnienie o tym to najczęstszy błąd w tym rozdziale.
curl -s -X PUT -H 'Content-Type: application/json' \
-d '{"role":"admin"}' http://127.0.0.1:9127/users/3A gdy nie masz pewności, skieruj żądanie do nasłuchującego serwera i odczytaj je.
Wyzwanie
Umieść cały rozdział w jednym żądaniu.
- Uruchom nasłuch przechwytujący na porcie 9127
- Wyślij PUT do
http://127.0.0.1:9127/users/3z treścią JSON{"role":"admin"}, prawidłowo oznaczoną - Wyświetl wiersz żądania, następnie wiersz Content-Type, a potem treść
Oczekiwany wynik:
PUT /users/3 HTTP/1.1
Content-Type: application/json
{"role":"admin"}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
4Czy jest osiągalny?
ICMP i pingOdczytywanie wyników pingGdy ping kłamieOdmowa połączenia lub przekroczenie limitu czasuPodsumowanie: osiągalność7Wysyłanie danych
POST z -dCo tak naprawdę wysyła -dKodowanie formularzaWysyłanie JSONPUT i DELETEPodsumowanie: zapisywanie danych3Porty 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