Podstawy tworzenia stron internetowych: klient, serwer i Python
Aplikacja webowa to dialog między klientem a serwerem. Ustalmy, kto jest kim.
Aplikacja webowa zazwyczaj składa się z dwóch stron współdziałających: klienta i serwera. Klientem najczęściej jest przeglądarka. Wysyła HTTP- żądań i wyświetla otrzymane odpowiedzi. Backend przyjmuje żądania, wykonuje logikę aplikacji, jeśli jest to konieczne Uzyskuje dostęp do bazy danych i generuje odpowiedź.
Python jest często używany do programowania backendu aplikacji webowej. W tym Aplikacja TChapter Server jest napisana w Python przy użyciu Flask.
Klient i serwer
Klient — program, który wysyła zapytanie i otrzymuje na nie odpowiedź. Serwer to program, który przyjmuje i odpowiada na żądania. Word „serwer”
Ta wymiana żądań i odpowiedzi podlega ogólnej zasadzie, zwanej protokołem HTTP (HyperText Transfer Protocol, protokół transferu hipertekstu). Więcej informacji można znaleźć w sekcjach 22.7-22.10; tutaj wystarczy wiedzieć, że przeglądarka i serwer Wymieniać się wiadomościami według tych samych zasad, niezależnie od tego, kto je napisał.
co robi przeglądarka
Przeglądarka to program kliencki, który pod adresem użytkownika buduje i wysyła HTTP-żądanie, otrzymuje HTTP-odpowiedź i wyświetla ją: analizuje HTML, stosuje CSS, wykonuje JavaScript, pokazuje obrazy i inne zasoby strony.
Co robi aplikacja serwerowa
Aplikacja serwera akceptuje żądanie, decyduje, co zrobić (otwórz lista zadania, zapisz nowy rekord, zwróć dane w JSON) formacie, jeśli to konieczne, do bazy danych i generuje odpowiedź — najczęściej stronę lub dane HTML-.
Gdzie Python używany
W typowej aplikacji webowej Python działa po stronie serwera: kod działa na a gotowy wynik jest wysyłany do przeglądarki. Dalej w tym rozdziale tak to wygląda — Python jest wykonywany przez serwer zbudowany na Flask.
Internet i World Wide Web
Internet to siatka, która fizycznie łączy komputery ze sobą i wie, jak przesyłać dane między nimi. World Wide Web (World Wide Web, Web) to jeden ze sposobów wykorzystania tej sieci: strony, połączenia między nimi, protokół HTTP. Inne usługi również działają w tym samym Internecie – poczta, komunikatory, gry online, - Internet to tylko jedna z nich, choć najbardziej widoczna.
Adres strony internetowej: domena i adres IP-
Aby poinformować przeglądarkę, do którego serwera ma się udać, strona ma domena —
Nazwa gatunkowa python.orgto łatwo zapamiętać. Ale
Komputery w Internecie odnajdują się nawzajem za pomocą adresów numerycznych —
IP-adresy. Specjalna usługa, DNS, zamienia domenę w adres IP- przed
wysyłanie żądania. Cała ta podróż jest szczegółowo omówiona w sekcji 22.7 oraz urządzenie
Sam adres znajduje się w sekcji 22.8.
Frontend i backend
Co użytkownik widzi i z czym wchodzi w interakcje w przeglądarce — HTML, CSS, JavaScript — są nazywane frontend (front — „przed”). Program, który działa na serwerze i przygotowuje odpowiedzi, nazywa się backendem (back – „tył”
Strona statyczna i dynamiczna aplikacja
Najprostsza strona to po prostu pliki .htmlleżąc na
Serwer: Serwer zwraca je bez zmian, to jest statyczny strona. Jeśli odpowiedź jest za każdym razem tworzona na nowo — z uwzględnieniem tego, kto pytał, co jest w bazie danych, co człowiek właśnie wysłał w formularzu — taką aplikację nazywa się
dynamika. Strona internetowa, którą stworzysz w tym rozdziale na Flasku, — dynamiczna: buduje stronę HTML z danych bezpośrednio podczas zapytania.
Poniższe trzy sekcje zawierają krótkie wprowadzenie do języków front-endowych: HTML (Rozdział 22.2), CSS (sekcja 22.3) oraz JavaScript (sekcja 22.4). Następnie pierwszy backend na Python z Biblioteka Flask (Rozdział 22.5).