Witam ponownie.
Tak więc jest jednym z ważniejszych doświadczeń w całym przebiegu.
Ale to też będzie zupełnie inna niż wszystko, co zrobiliśmy do tej pory.
I dlatego, że jest inaczej jest to, że mam zamiar zostać pokazując kilka kodu, który nigdy nie widział i nie oczekuje się, aby zrozumieć w ogóle.
Powodem robię to chcę dać koncepcyjne przegląd tego, jak te wszystkie elementy pasują do siebie.
Baza danych serwera żądania GET po prosi przeglądarkę.
Wszystkie te różne rzeczy żądań i odpowiedzi.
Chcę pokazać wszystkim, że z bardzo prostej aplikacji roboczej.
Więc to, co mam zamiar zrobić.
Gdybym uczył tego osobiście, będzie to punkt, w którym pytam cię umieścić laptopa w dół, aby zamknąć komputer.
Oczywiście nie jest dobrym pomysłem tutaj.
Ale nastroje za to, że nie chcę, aby być notatek na ten temat.
Mamy zamiar przejść przez każdą linię i napisać go od nowa i zrobić pięć sześć siedem z tych różnych aplikacji korzystających z tych pojęć.
Więc to tylko o tym, jak rzeczy nie pasują do siebie rzeczywiste dane o tym, jak one działają.
Z powiedział, że idziemy do przodu i zacząć tutaj.
Więc ta aplikacja jest tematycznie wokół psów.
To bardzo, bardzo proste.
Nie stylizacji wcale.
Zaledwie kilka różnych stronach.
I pierwszą rzeczą jaką trzeba mówić o co cały ten plik jest.
Więc to jest nasz plik serwera.
W moim przypadku to się nazywa aplikacji Dodge.
Tak to jest napisane w JavaScript.
I kiedy uruchomić ten plik rzeczywiście uruchomić serwer dla mnie.
Więc kiedy już wspomniano wcześniej, kiedy wysłać żądanie czytać to kropka com ukośnik wyszukiwania nie ma kodu na serwerze Reddit, że nasłuchuje na żądanie, aby ją przeczytać.
Teraz szukaj com ukośnik, a następnie wysyła z powrotem poprawne dane w odpowiedzi.
Podczas gdy mówię, nie ma kodu na serwerze Reddit jest to rodzaj kodu mówimy.
Więc nawet jeśli odczyt odbywa się w Pythonie i jest to JavaScript Jest to nasz kod na serwerze, który nasłuchuje dla różnych wniosków, a następnie odpowiadając różnych kawałków.
Istnieją trzy duże kawałki i to aż do góry dopiero się nasza aplikacja skonfigurować.
Więc w tym prawo bibliotek jak widać jest kilka zależności.
Znów pójdziemy na wszystkie z nich później.
Następnie mamy kilka rzeczy do bazy danych.
Tak to jest w trakcie tworzenia naszej bazy danych, dzięki czemu nasza baza wie każdy pies ma swoje imię i rasę i są zarówno ciągi.
I to wszystko wspomniano o tym na razie.
A potem są te rzeczy nazywane okłady czyli tam, gdzie będziemy spędzać większość czasu w tej lekcji, zanim to zrobimy jednak chcę zwrócić uwagę na najważniejszą część rzeczywiście uruchomić serwer, który jest na samym końcu tutaj linia nie ma znaczenia, składni, ale co ma to znaczenia.
Nie ma tu liczba trzech tysięcy.
Co to będzie zrobić, to kiedy uruchomić tę aplikację po uruchomieniu tego pliku w moim terminalu będzie zacząć na serwer i nasza aplikacja będzie na porcie 3000.
Więc pozwól mi pokazać, co mam na myśli.
Zamierzam rozpocząć ten serwer się uruchamiając plik ponownie naprawdę nie ma znaczenia, co robię tam.
I widać otrzymuję komunikat serwującą demo psa na porcie 3000.
Więc co mam edytora tekstu piszę kod tu na moim serwerze.
Wtedy w moim terminalu Jestem rzeczywiście działa serwer.
Więc teraz ten kod jest uruchamiany cały ten kod jest uruchamiany, a linia ta w szczególności rozpoczęła serwer na porcie trzech tysięcy.
Więc jeśli pójdę do portu trzy tysiące teraz, a sposób w jaki się tam dostać jest host lokalny Colan 3000 widzę coś, co mówi do strony startowej.
Porozmawiajmy o tym, jak Dostaję że strona główna HMO gdybyśmy zobaczyć źródło strony.
Można zobaczyć wszystko, co mam, jako odpowiedź była jedna H-1, który mówi stronę główną i to wszystko.
Więc jeśli wrócę do mojego serwera tutaj, istnieje kilka rzeczy, które chciałbym podkreślić.
Pierwszym z nich jest to, że w moim terminalu, gdzie uruchomieniu serwera znajduje się mała wiadomość, która została wydrukowana.
A co to mówi nam, że ktoś popełnił zamówienie Pobierz który mówi o tym, co do wy arole ukośnik.
Więc localhost 3000 kreską.
Więc nie ma nic potem.
Nazywamy tę ścieżkę główną lub tylko trasę, która jest w zasadzie to, co chcemy, by nasza strona główna być.
Więc jeszcze raz poszedłem do localhost 3000 i wciskamy enter.
I to ma mi jakiś kod, ale gdybym poszedł do localhost 3000 ukośnymi psy, które daje mi jakąś inną rzeczy z powrotem, jeśli mogę wyświetlić źródło strony na ten temat można zobaczyć, jeśli mamy trochę więcej treści, które różni się od treści dotarliśmy po raz pierwszy i to dlatego, że jest to inny wiersz lub inną drogą.
Tak więc w tym przypadku nie tylko z prośbą o Slash.
Pytałem dla psów Slash.
A jeśli spojrzeć na wyjściu zacisku widać istnieje różnica między zamówienie Pobierz ciąć lub zamówienie Pobierz ciąć psów.
To tylko pokazuje mi to mogę ci pokazać, co się dzieje, ale to nie jest logiczne ani nic.
To tylko okno do wniosków, które są wykonane.
OK, więc to strona prośba rzeczy.
Kiedy nacisnąć enter i złożyć zamówienie.
To samo tutaj.
Ja tylko czyniąc je do dwóch różnych miejscach.
Oczywiście mogę się pozbyć tych wniosków z listonoszem, jak również.
Więc zróbmy i dostać wniosek localhost 3000 tak po prostu.
Poświęć chwilę i pomyśleć o tym, czego oczekują od nas, aby zobaczyć, kiedy uderzę wysłać.
Nie pójdziemy po prostu dostać dokładnie to samo H-1 i jeśli robię lokalnego hosta 3000 ukośnymi psy, które jest żądanie GET i uderzyłem wysłać uzyskać ten sam list HD, które dostaliśmy kiedy zrobiłem zamówienie Pobierz w przeglądarce trafiając wchodzić.
Teraz porozmawiajmy o logice, która sprawia, że ​​wszystko to stało po stronie serwera.
Więc mam zamiar wrócić do wzniosłości i skupić się na tych trzech częściach tu w szczególności te dwa.
Wiem, że mam złamany zapis na ten temat, ale składnia nie jest najważniejsze.
Będziemy spędzać tyle czasu na pisanie w rzeczywistości te trasy, które nie jest to istotne.
Co istotne jest to, że w tym pierwszym małym kawałku ten kod nasłuchuje na zamówienie Pobierz ciąć więc się ukośnikiem.
A kiedy to się stanie, jesteśmy renderowania strony o nazwie domu.
Więc jeszcze raz, gdy żądanie get jest ciąć localhost 3000 ukośnik nic innego wtedy mamy zamiar uczynić coś, co nazywa domem.
I tu mam plik o nazwie domu.
Nie ma znaczenia, co yess Ejay.
A w jej wnętrzu Jest takie H1, który mówi główną.
Warto więc dodać coś jeszcze tam paragraf niska tak po prostu i oszczędzać.
A teraz, kiedy złożyć wniosek tylko dostać zamówienie Pobierz ciąć uzyskać zawartość tego pliku domu odesłany do mnie, aby te zmiany do pracy I rzeczywiście trzeba ponownie uruchomić serwer.
Więc zacznę teraz i oglądać włożę tego ciągu na boku i będę wracać do Chrome dostać mój serwer tam ponownie.
Zamierzam złożyć zamówienie Pobierz localhost 3000.
Jak widać, to mówi mi żądania get powstał ciąć.
I mamy tę zawartość do tyłu.
Więc znowu nasz kod tutaj nasłuchuje otrzymujemy wnioski slash i zdecydować, co plik odesłać.
Teraz tutaj jest inny, bardziej skomplikowana wersja, że ​​jeżeli mamy do słuchania na zamówienie Pobierz ciąć psów.
A jeszcze jakiś inny kod, który się tu dzieje.
A ja po prostu czytać komentarz.
Wszystko, co dzieje się tutaj, to dostać wszystkie psy z bazy danych, więc mam pewne już w naszej bazie danych.
A potem następna część jest renderować plik psy, a my po prostu zostawić go na tym na razie.
Więc jesteśmy już wszystkie psy w bazie danych i renderowania pliku psy, które jest tutaj.
A ten wygląda nieco inaczej.
To nie tylko on.
Mamy jakieś dziwne rzeczy tutaj nie widzieliśmy wcześniej.
Ale pod koniec dnia, co się dzieje, kiedy idę ciąć psów nasza aplikacja nasłuchuje na zamówienie Pobierz ciąć psów.
Kiedy robi się jeden pobiera wszystkie psy w bazie danych, a każdy z nich ma swoją nazwę i czy rasę i to sprawia, że ​​trochę kłamstwo dla każdego z nich.
Tak więc każdy z nich jest sojusznikiem z imieniem i rasy.
Więc znowu mamy dwie trasy ukośnik jako żądanie GET i slash psy jako żądanie GET i mamy dwa różne pliki i trochę logiki, kiedy idziemy ciąć psów kontra kiedy po prostu pójść do slash.
Nie ma logiki dzieje nic się nie dzieje z bazą danych.
To właśnie daje nam stronę statyczną.
Ale to nie jest statyczna.
To zależy od tego, co nadchodzi z bazy danych.
Wróć do serwera tutaj do naszego kodu i pogadam trochę o tej linii tutaj.
Więc jesteśmy renderowania strona szablon o nazwie Psy, które jest co jest napisane tutaj psy.
Tak, ale jesteśmy przekazując dane do tego szablonu, ponieważ nie ma tu sojusznika, który mówi Resti kreska kundla i nie mają jeszcze jeden później w szablonie, który mówi, dlaczego złoty pędzić jak widać to jest to, co mamy 're się w przeglądarce.
Ale nasz plik nie posiada żadnej z tych rzeczy.
I to właśnie sprawia, że ​​dynamiczny.
Plik ten może być inny za każdym razem, że działa on w zależności od tego, co znajduje się w bazie danych.
Więc co tak naprawdę zrobić, to zdefiniować szablon lub wzorzec dla czego chcemy się zdarzyć, która jest dla każdego materiału pies pies dla każdego chcemy mieć sprzymierzeńca, dokąd jedziemy, aby nazwy pogrubione lub silnego kreskę rasy tak zwykły tekst.
Tak to jest, jak to w końcu z tego dla każdego psa w bazie danych, które pobierzemy jedziemy do pętli i uczynić jednego sojusznika z nazwą w pogrubioną kreską, które nie rozmnażają się w pogrubione.
Więc na tym poprzestać.
Podsumujmy teraz.
Więc mamy kod, który tworzy serwer właśnie tutaj.
Wszystko to jest tylko kod odpowiedzialny za uczynienie naszego serwera.
Mamy jedne skonfigurować kod nie ma większego znaczenia.
Niektóre kodu w bazie nie ma znaczenia zbyt wiele.
A potem te dwie trasy i te mają znaczenia dużo.
Tak to jest jak mamy inny kod i różne pliki w zależności od jesteś wszystkim, co możemy zażądać złożenia wniosku ciąć jak to się wniosek.
Dostajemy jeden dom pliku robimy zamówienie Pobierz ciąć psów i trochę więcej dzieje się za kulisami.
Stwierdza wszystkie psy w bazie danych, a następnie sprawia, że ​​plik psy.
Ale plik psów jest dynamiczny, ponieważ trwa w kilka psów i dla każdego z nich.
To sprawia sojusznika.
Więc jeśli mieliśmy 10000 psy w bazie chcemy skończyć z 10000 sojuszników.
I ostatni punkt bardzo chcę zrobić jest to, że mamy edytor tekstowy, który tutaj mam terminal gdzie biegnę serwer a potem mam zamiar w przeglądarce i zwiedzając tamtej strony, dokonując żądanie.
Są trzy narzędzia, których potrzebujemy.
Więc te trzy rzeczy, edytora tekstu, gdzie piszemy kod w terminalu lub gdzieś, gdzie możemy uruchomić serwer i mają go słuchać.
I wreszcie przeglądarka gdzie rzeczywiście może pójść i złożyć wnioski.
Tak więc nie trzeba używać przeglądarki mogliśmy korzystać listonosza, ale nikt nie używa listonosz faktycznie interakcji z naszej strony internetowej w ciągu najbliższych kilku filmach, kiedy rozpocząć pisanie własnych aplikacji internetowych.
Musimy te trzy samych narzędzi.
Więc będziemy mieć edytor tekstowy przeglądarkę i terminal lub gdzieś, aby uruchomić serwer.