Flask Academy · Lekcja

Nagłówki, pliki cookie i adres IP klienta

Uzyskuj dostęp do request.headers, cookies i remote_addr.

Lekcja 4 z 413 kroki

Nagłówki, pliki cookie i adres IP klienta to bezpłatna lekcja Flask Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Flask Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Flask Academy zawiera 4 lekcji w sumie.

Żądania przenoszą metadane

Oprócz treści każde żądanie przenosi metadane, takie jak nagłówki, ciasteczka i adres klienta, które można sprawdzać w widokach.

Odczytywanie nagłówków za pomocą request.headers

Obiekt request.headers jest mapowaniem wszystkich nagłówków HTTP wysłanych przez klienta wraz z żądaniem, niewrażliwym na wielkość liter.

agent = request.headers["User-Agent"]

Nagłówki nie rozróżniają wielkości liter

Nagłówek można odczytać jako content-type lub Content-Type i otrzymać tę samą wartość, ponieważ nazwy nagłówków z założenia nie rozróżniają wielkości liter.

ct = request.headers.get("Content-Type")

Pobieranie nagłówka Authorization

Klienci API często wysyłają dane uwierzytelniające w nagłówku Authorization, który odczytuje się tak samo jak wartość dowolnego innego nagłówka.

auth = request.headers.get("Authorization")

Ciasteczka znajdują się w request.cookies

Wartości ustawione wcześniej przez serwer wracają w request.cookies — obiekcie podobnym do słownika, którego kluczami są nazwy ciasteczek.

theme = request.cookies.get("theme")

Zawsze ustawiaj wartości domyślne ciasteczek

Użytkownik odwiedzający stronę po raz pierwszy nie ma jeszcze ciasteczek, dlatego użyj .get z rozsądną wartością domyślną, aby uniknąć niespodzianek przy pierwszym żądaniu.

theme = request.cookies.get("theme", "light")

Adres IP klienta przez remote_addr

Flask udostępnia adres połączenia jako request.remote_addr, co przydaje się do rejestrowania zdarzeń lub prostego kontrolowania limitu żądań.

ip = request.remote_addr

Serwery proxy ukrywają prawdziwy adres IP

Za serwerem proxy wartość remote_addr wskazuje adres proxy. Prawdziwy adres IP klienta często znajduje się zamiast tego w nagłówku X-Forwarded-For.

ip = request.headers.get("X-Forwarded-For")

Poznaj żądany adres URL

Użyj request.url, aby sprawdzić pełny adres, albo request.path, aby pobrać tylko część zawierającą ścieżkę żądaną przez klienta.

where = request.path

Rozpoznawanie metody HTTP

Sprawdź request.method, aby zobaczyć, czy żądanie używa metody GET, POST lub innej, a następnie odpowiednio rozgałęź logikę.

if request.method == "POST":
    pass

Diagnostyczny widok whoami

Łącząc te informacje, można utworzyć trasę whoami, która zgłasza adres IP i przeglądarkę osoby wysyłającej żądanie — idealne rozwiązanie do debugowania rzeczywistego ruchu.

@app.route("/whoami")
def whoami():
    return f"{request.remote_addr}"

Szybkie sprawdzenie

Sprawdź swoją wiedzę o metadanych żądań.

Podsumowanie: nagłówki i ciasteczka

Bezpiecznie odczytywał(a) Pan/Pani nagłówki i ciasteczka, znajdował(a) adres IP klienta za pomocą remote_addr oraz dowiedział(a) się, że serwery proxy ukrywają prawdziwy adres. 🚀

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Nagłówki, pliki cookie i adres IP klienta” jest bezpłatna?

Tak — pełny tekst „Nagłówki, pliki cookie i adres IP klienta” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Flask Academy, przejdź na CoddyKit PRO. Kurs Flask Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Nagłówki, pliki cookie i adres IP klienta”?

Uzyskuj dostęp do request.headers, cookies i remote_addr. Ćwiczysz Flask Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Flask Academy?

Nie wymagamy żadnego doświadczenia. Flask Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Nagłówki, pliki cookie i adres IP klienta”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Flask Academy?

Tak. Każda lekcja Flask Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Parametry zapytania przez request.args
  2. Pola formularza przez request.form
  3. Treści JSON przez request.get_json
  4. Nagłówki, pliki cookie i adres IP klienta
← Powrót do Flask Academy