Flask Academy · Lekcja

Deklarowanie dozwolonych metod na trasie

Przekaż metody GET i POST do @app.route.

Lekcja 1 z 413 kroki

Deklarowanie dozwolonych metod na trasie to bezpłatna lekcja Flask Academy na CoddyKit. To lekcja 1 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.

Trasy domyślnie obsługują GET

Każda napisana dotąd trasa Flask odpowiada tylko na żądania GET. Przeglądarki używają GET do pobierania stron, więc jest to naturalna wartość domyślna.

Argument methods

Aby akceptować inne metody, przekaż listę methods do dekoratora trasy. Informuje ona Flask dokładnie, jakie metody HTTP będzie obsługiwać widok.

@app.route("/submit", methods=["GET", "POST"])
def submit():
    return "ok"

Dlaczego trzeba jawnie wymienić GET

Po ustawieniu methods niejawna obsługa GET znika. Jeśli nadal chcesz obsługiwać GET, musisz samodzielnie umieścić go na liście.

Trasa obsługująca tylko POST

Niektóre punkty końcowe nigdy nie powinny udostępniać strony. Utwórz trasę obsługującą tylko POST, wymieniając wyłącznie POST — żądania GET zostaną odrzucone.

@app.route("/api/items", methods=["POST"])
def create_item():
    return "created"

Metody są zapisywane wielkimi literami

Flask oczekuje każdej metody jako ciągu znaków zapisanego wielkimi literami, na przykład "GET" lub "POST". Wpisy zapisane małymi literami po prostu nie będą pasować do przychodzących żądań.

HEAD jest dodawane automatycznie

Gdy zezwalasz na GET, Flask automatycznie odpowiada również na HEAD. HEAD zwraca te same nagłówki co GET, ale bez treści.

OPTIONS również jest dodawane

Flask automatycznie obsługuje także OPTIONS, odpowiadając nagłówkiem Allow zawierającym listę metod akceptowanych przez trasę.

Poza GET i POST

API często potrzebuje większej liczby metod. W ten sam sposób możesz wymienić PUT, PATCH lub DELETE, aby obsługiwać aktualizowanie i usuwanie zasobów.

@app.route("/api/items/<id>", methods=["PUT", "DELETE"])
def edit_item(id):
    return "changed"

Jedna funkcja, wiele metod

Pojedynczy widok może jednocześnie akceptować kilka metod. W jego wnętrzu decydujesz, co robi każda z nich — wszystko w ramach jednej funkcji.

Dopasuj metodę do zamiaru

Używaj GET do odczytu, a POST do tworzenia. Wybór właściwej metody sprawia, że API jest przewidywalne dla każdego wywołującego je klienta.

Niewłaściwa metoda oznacza brak dopasowania

Jeśli klient użyje metody, której nie wymieniono, Flask całkowicie odrzuci żądanie. Deklarowanie methods to pierwsza linia kontroli dostępu.

Szybkie sprawdzenie

Zastanów się, co dzieje się z GET po ustawieniu methods.

Podsumowanie

Trasy domyślnie obsługują GET, ale lista methods pozwala akceptować POST, PUT i inne metody. Jeśli nadal potrzebuje Pan/Pani GET, należy dodać go na liście. Świetnie! 🎉

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 „Deklarowanie dozwolonych metod na trasie” jest bezpłatna?

Tak — pełny tekst „Deklarowanie dozwolonych metod na trasie” 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 „Deklarowanie dozwolonych metod na trasie”?

Przekaż metody GET i POST do @app.route. Ć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 1 z 4.

Ile czasu zajmuje lekcja „Deklarowanie dozwolonych metod na trasie”?

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. Deklarowanie dozwolonych metod na trasie
  2. Rozgałęzianie logiki według request.method
  3. Odczytywanie danych POST z treści żądania
  4. Wyjaśnienie błędu 405 Method Not Allowed
← Powrót do Flask Academy