1
00:00:00,210 --> 00:00:01,510
Witam ponownie.

2
00:00:01,530 --> 00:00:04,700
Tak więc jest jednym z ważniejszych doświadczeń w całym przebiegu.

3
00:00:04,890 --> 00:00:08,670
Ale to też będzie zupełnie inna niż wszystko, co zrobiliśmy do tej pory.

4
00:00:08,670 --> 00:00:18,120
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.

5
00:00:18,120 --> 00:00:23,770
Powodem robię to chcę dać koncepcyjne przegląd tego, jak te wszystkie elementy pasują do siebie.

6
00:00:23,790 --> 00:00:28,430
Baza danych serwera żądania GET po prosi przeglądarkę.

7
00:00:28,440 --> 00:00:30,900
Wszystkie te różne rzeczy żądań i odpowiedzi.

8
00:00:31,080 --> 00:00:35,430
Chcę pokazać wszystkim, że z bardzo prostej aplikacji roboczej.

9
00:00:35,430 --> 00:00:37,120
Więc to, co mam zamiar zrobić.

10
00:00:37,200 --> 00:00:43,920
Gdybym uczył tego osobiście, będzie to punkt, w którym pytam cię umieścić laptopa w dół, aby zamknąć komputer.

11
00:00:44,040 --> 00:00:45,670
Oczywiście nie jest dobrym pomysłem tutaj.

12
00:00:45,930 --> 00:00:50,100
Ale nastroje za to, że nie chcę, aby być notatek na ten temat.

13
00:00:50,100 --> 00:00:57,240
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ęć.

14
00:00:57,240 --> 00:01:03,580
Więc to tylko o tym, jak rzeczy nie pasują do siebie rzeczywiste dane o tym, jak one działają.

15
00:01:03,600 --> 00:01:06,630
Z powiedział, że idziemy do przodu i zacząć tutaj.

16
00:01:07,020 --> 00:01:09,840
Więc ta aplikacja jest tematycznie wokół psów.

17
00:01:09,840 --> 00:01:11,010
To bardzo, bardzo proste.

18
00:01:11,010 --> 00:01:12,320
Nie stylizacji wcale.

19
00:01:12,420 --> 00:01:14,320
Zaledwie kilka różnych stronach.

20
00:01:14,430 --> 00:01:19,250
I pierwszą rzeczą jaką trzeba mówić o co cały ten plik jest.

21
00:01:19,260 --> 00:01:21,750
Więc to jest nasz plik serwera.

22
00:01:21,750 --> 00:01:23,450
W moim przypadku to się nazywa aplikacji Dodge.

23
00:01:23,460 --> 00:01:25,720
Tak to jest napisane w JavaScript.

24
00:01:25,800 --> 00:01:30,180
I kiedy uruchomić ten plik rzeczywiście uruchomić serwer dla mnie.

25
00:01:30,180 --> 00:01:41,310
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ć.

26
00:01:41,310 --> 00:01:45,850
Teraz szukaj com ukośnik, a następnie wysyła z powrotem poprawne dane w odpowiedzi.

27
00:01:46,080 --> 00:01:50,990
Podczas gdy mówię, nie ma kodu na serwerze Reddit jest to rodzaj kodu mówimy.

28
00:01:51,210 --> 00:02:00,620
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.

29
00:02:00,630 --> 00:02:05,150
Istnieją trzy duże kawałki i to aż do góry dopiero się nasza aplikacja skonfigurować.

30
00:02:05,250 --> 00:02:09,370
Więc w tym prawo bibliotek jak widać jest kilka zależności.

31
00:02:09,390 --> 00:02:11,560
Znów pójdziemy na wszystkie z nich później.

32
00:02:11,850 --> 00:02:13,570
Następnie mamy kilka rzeczy do bazy danych.

33
00:02:13,830 --> 00:02:22,060
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.

34
00:02:22,470 --> 00:02:24,240
I to wszystko wspomniano o tym na razie.

35
00:02:24,630 --> 00:02:39,040
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.

36
00:02:39,050 --> 00:02:40,930
Nie ma tu liczba trzech tysięcy.

37
00:02:40,950 --> 00:02:51,860
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.

38
00:02:51,870 --> 00:02:53,160
Więc pozwól mi pokazać, co mam na myśli.

39
00:02:53,160 --> 00:02:59,130
Zamierzam rozpocząć ten serwer się uruchamiając plik ponownie naprawdę nie ma znaczenia, co robię tam.

40
00:02:59,130 --> 00:03:03,260
I widać otrzymuję komunikat serwującą demo psa na porcie 3000.

41
00:03:03,570 --> 00:03:07,650
Więc co mam edytora tekstu piszę kod tu na moim serwerze.

42
00:03:07,860 --> 00:03:11,000
Wtedy w moim terminalu Jestem rzeczywiście działa serwer.

43
00:03:11,220 --> 00:03:18,840
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.

44
00:03:18,870 --> 00:03:28,620
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.

45
00:03:28,980 --> 00:03:34,570
Porozmawiajmy o tym, jak Dostaję że strona główna HMO gdybyśmy zobaczyć źródło strony.

46
00:03:34,950 --> 00:03:42,150
Można zobaczyć wszystko, co mam, jako odpowiedź była jedna H-1, który mówi stronę główną i to wszystko.

47
00:03:42,150 --> 00:03:46,620
Więc jeśli wrócę do mojego serwera tutaj, istnieje kilka rzeczy, które chciałbym podkreślić.

48
00:03:46,770 --> 00:03:52,620
Pierwszym z nich jest to, że w moim terminalu, gdzie uruchomieniu serwera znajduje się mała wiadomość, która została wydrukowana.

49
00:03:52,780 --> 00:04:00,340
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.

50
00:04:00,630 --> 00:04:02,750
Więc localhost 3000 kreską.

51
00:04:02,820 --> 00:04:04,160
Więc nie ma nic potem.

52
00:04:04,530 --> 00:04:10,560
Nazywamy tę ścieżkę główną lub tylko trasę, która jest w zasadzie to, co chcemy, by nasza strona główna być.

53
00:04:10,560 --> 00:04:15,840
Więc jeszcze raz poszedłem do localhost 3000 i wciskamy enter.

54
00:04:16,200 --> 00:04:38,430
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ą.

55
00:04:38,430 --> 00:04:42,670
Tak więc w tym przypadku nie tylko z prośbą o Slash.

56
00:04:42,840 --> 00:04:44,840
Pytałem dla psów Slash.

57
00:04:45,210 --> 00:04:54,570
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.

58
00:04:54,570 --> 00:04:59,630
To tylko pokazuje mi to mogę ci pokazać, co się dzieje, ale to nie jest logiczne ani nic.

59
00:04:59,640 --> 00:05:03,010
To tylko okno do wniosków, które są wykonane.

60
00:05:03,390 --> 00:05:05,330
OK, więc to strona prośba rzeczy.

61
00:05:05,430 --> 00:05:08,760
Kiedy nacisnąć enter i złożyć zamówienie.

62
00:05:08,760 --> 00:05:09,720
To samo tutaj.

63
00:05:09,930 --> 00:05:12,430
Ja tylko czyniąc je do dwóch różnych miejscach.

64
00:05:12,780 --> 00:05:16,680
Oczywiście mogę się pozbyć tych wniosków z listonoszem, jak również.

65
00:05:16,680 --> 00:05:21,250
Więc zróbmy i dostać wniosek localhost 3000 tak po prostu.

66
00:05:21,300 --> 00:05:25,890
Poświęć chwilę i pomyśleć o tym, czego oczekują od nas, aby zobaczyć, kiedy uderzę wysłać.

67
00:05:27,100 --> 00:05:43,490
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ć.

68
00:05:43,500 --> 00:05:47,790
Teraz porozmawiajmy o logice, która sprawia, że ​​wszystko to stało po stronie serwera.

69
00:05:48,110 --> 00:05:54,940
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.

70
00:05:55,320 --> 00:06:00,230
Wiem, że mam złamany zapis na ten temat, ale składnia nie jest najważniejsze.

71
00:06:00,270 --> 00:06:04,960
Będziemy spędzać tyle czasu na pisanie w rzeczywistości te trasy, które nie jest to istotne.

72
00:06:05,010 --> 00:06:15,450
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.

73
00:06:15,720 --> 00:06:20,400
A kiedy to się stanie, jesteśmy renderowania strony o nazwie domu.

74
00:06:20,400 --> 00:06:29,690
Więc jeszcze raz, gdy żądanie get jest ciąć localhost 3000 ukośnik nic innego wtedy mamy zamiar uczynić coś, co nazywa domem.

75
00:06:30,030 --> 00:06:32,660
I tu mam plik o nazwie domu.

76
00:06:32,670 --> 00:06:34,560
Nie ma znaczenia, co yess Ejay.

77
00:06:34,860 --> 00:06:38,360
A w jej wnętrzu Jest takie H1, który mówi główną.

78
00:06:38,430 --> 00:06:45,980
Warto więc dodać coś jeszcze tam paragraf niska tak po prostu i oszczędzać.

79
00:06:46,720 --> 00:06:58,740
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.

80
00:06:58,800 --> 00:07:07,590
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.

81
00:07:08,220 --> 00:07:11,730
Zamierzam złożyć zamówienie Pobierz localhost 3000.

82
00:07:11,970 --> 00:07:16,380
Jak widać, to mówi mi żądania get powstał ciąć.

83
00:07:16,830 --> 00:07:19,530
I mamy tę zawartość do tyłu.

84
00:07:19,590 --> 00:07:26,480
Więc znowu nasz kod tutaj nasłuchuje otrzymujemy wnioski slash i zdecydować, co plik odesłać.

85
00:07:26,490 --> 00:07:33,550
Teraz tutaj jest inny, bardziej skomplikowana wersja, że ​​jeżeli mamy do słuchania na zamówienie Pobierz ciąć psów.

86
00:07:33,930 --> 00:07:36,250
A jeszcze jakiś inny kod, który się tu dzieje.

87
00:07:36,390 --> 00:07:37,740
A ja po prostu czytać komentarz.

88
00:07:37,740 --> 00:07:44,930
Wszystko, co dzieje się tutaj, to dostać wszystkie psy z bazy danych, więc mam pewne już w naszej bazie danych.

89
00:07:45,190 --> 00:07:54,350
A potem następna część jest renderować plik psy, a my po prostu zostawić go na tym na razie.

90
00:07:54,390 --> 00:07:59,430
Więc jesteśmy już wszystkie psy w bazie danych i renderowania pliku psy, które jest tutaj.

91
00:07:59,710 --> 00:08:01,390
A ten wygląda nieco inaczej.

92
00:08:01,410 --> 00:08:02,940
To nie tylko on.

93
00:08:02,970 --> 00:08:05,740
Mamy jakieś dziwne rzeczy tutaj nie widzieliśmy wcześniej.

94
00:08:06,030 --> 00:08:14,230
Ale pod koniec dnia, co się dzieje, kiedy idę ciąć psów nasza aplikacja nasłuchuje na zamówienie Pobierz ciąć psów.

95
00:08:14,340 --> 00:08:22,330
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.

96
00:08:22,470 --> 00:08:25,600
Tak więc każdy z nich jest sojusznikiem z imieniem i rasy.

97
00:08:26,100 --> 00:08:38,740
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.

98
00:08:38,880 --> 00:08:41,910
Nie ma logiki dzieje nic się nie dzieje z bazą danych.

99
00:08:41,910 --> 00:08:44,530
To właśnie daje nam stronę statyczną.

100
00:08:44,880 --> 00:08:46,140
Ale to nie jest statyczna.

101
00:08:46,260 --> 00:08:49,260
To zależy od tego, co nadchodzi z bazy danych.

102
00:08:50,160 --> 00:08:56,830
Wróć do serwera tutaj do naszego kodu i pogadam trochę o tej linii tutaj.

103
00:08:57,480 --> 00:09:02,910
Więc jesteśmy renderowania strona szablon o nazwie Psy, które jest co jest napisane tutaj psy.

104
00:09:03,120 --> 00:09:23,890
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.

105
00:09:24,000 --> 00:09:26,160
Ale nasz plik nie posiada żadnej z tych rzeczy.

106
00:09:26,250 --> 00:09:27,810
I to właśnie sprawia, że ​​dynamiczny.

107
00:09:27,840 --> 00:09:32,970
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.

108
00:09:32,970 --> 00:09:51,000
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.

109
00:09:51,000 --> 00:10:02,610
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.

110
00:10:02,610 --> 00:10:03,780
Więc na tym poprzestać.

111
00:10:03,780 --> 00:10:05,010
Podsumujmy teraz.

112
00:10:05,160 --> 00:10:10,140
Więc mamy kod, który tworzy serwer właśnie tutaj.

113
00:10:10,140 --> 00:10:13,820
Wszystko to jest tylko kod odpowiedzialny za uczynienie naszego serwera.

114
00:10:13,950 --> 00:10:16,190
Mamy jedne skonfigurować kod nie ma większego znaczenia.

115
00:10:16,200 --> 00:10:18,820
Niektóre kodu w bazie nie ma znaczenia zbyt wiele.

116
00:10:18,840 --> 00:10:21,320
A potem te dwie trasy i te mają znaczenia dużo.

117
00:10:21,630 --> 00:10:30,180
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.

118
00:10:30,330 --> 00:10:38,280
Dostajemy jeden dom pliku robimy zamówienie Pobierz ciąć psów i trochę więcej dzieje się za kulisami.

119
00:10:38,430 --> 00:10:42,720
Stwierdza wszystkie psy w bazie danych, a następnie sprawia, że ​​plik psy.

120
00:10:42,930 --> 00:10:49,170
Ale plik psów jest dynamiczny, ponieważ trwa w kilka psów i dla każdego z nich.

121
00:10:49,170 --> 00:10:50,410
To sprawia sojusznika.

122
00:10:50,520 --> 00:10:55,230
Więc jeśli mieliśmy 10000 psy w bazie chcemy skończyć z 10000 sojuszników.

123
00:10:55,920 --> 00:11:08,490
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.

124
00:11:08,520 --> 00:11:10,370
Są trzy narzędzia, których potrzebujemy.

125
00:11:10,410 --> 00:11:19,780
Więc te trzy rzeczy, edytora tekstu, gdzie piszemy kod w terminalu lub gdzieś, gdzie możemy uruchomić serwer i mają go słuchać.

126
00:11:20,100 --> 00:11:24,420
I wreszcie przeglądarka gdzie rzeczywiście może pójść i złożyć wnioski.

127
00:11:24,630 --> 00:11:34,540
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.

128
00:11:34,560 --> 00:11:36,780
Musimy te trzy samych narzędzi.

129
00:11:36,960 --> 00:11:42,440
Więc będziemy mieć edytor tekstowy przeglądarkę i terminal lub gdzieś, aby uruchomić serwer.
