1 00:00:00,000 --> 00:00:05,950 2 00:00:05,950 --> 00:00:09,310 >> GŁOŚNIK: Porozmawiajmy o kolejny protocol-- Hypertext Transfer 3 00:00:09,310 --> 00:00:12,060 Protokół lub HTTP. 4 00:00:12,060 --> 00:00:15,074 Więc rozmawialiśmy o IP oraz TCP w poprzednich filmów. 5 00:00:15,074 --> 00:00:17,240 A to są protokoły że dyktują, jak informacje 6 00:00:17,240 --> 00:00:20,970 porusza się od maszyny do maszyny i od programu lub usługi 7 00:00:20,970 --> 00:00:27,720 do obsługi przez Internet, za pośrednictwem ta sieć routerów i maszyn. 8 00:00:27,720 --> 00:00:30,640 >> Ale to nie jest zwykle cały obraz, prawda? 9 00:00:30,640 --> 00:00:33,530 Zwykle, gdy wysyłamy Informacje, program 10 00:00:33,530 --> 00:00:36,570 itself-- gdy dane jest otrzymane, na przykład, na przykład, 11 00:00:36,570 --> 00:00:44,270 w wiadomości e-mail za pośrednictwem portu TCP 25 lub Żądanie strony internetowej za pośrednictwem portu 80, 12 00:00:44,270 --> 00:00:48,220 jest zazwyczaj system zasad nie do przetworzenia, co właśnie otrzymał. 13 00:00:48,220 --> 00:00:51,960 I HTTP jest przykładem właśnie takiego protokołu. 14 00:00:51,960 --> 00:00:54,929 >> HTTP to jedyny protokół warstwy aplikacji 15 00:00:54,929 --> 00:00:56,220 że będziemy rozmawiać. 16 00:00:56,220 --> 00:00:59,660 Ale to jest inny zestaw zasad dyktowanie, jak 17 00:00:59,660 --> 00:01:02,790 informacje mają być przekazywane i przetwarzane przez Internet. 18 00:01:02,790 --> 00:01:06,390 W szczególności, HTTP określa dokładnie, jak 19 00:01:06,390 --> 00:01:11,300 należy złożyć wniosek o strona internetowa i jak dokładnie 20 00:01:11,300 --> 00:01:15,160 serwer, maszyna który obsługuje strony internetowe, 21 00:01:15,160 --> 00:01:17,840 zapewnia, że ​​informacje powrót do klientów. 22 00:01:17,840 --> 00:01:20,010 >> Więc ten protokół nie faktycznie mają nic 23 00:01:20,010 --> 00:01:22,270 z tym, jak informacje przemieszcza się z punktu A 24 00:01:22,270 --> 00:01:26,090 do punktu B. To naprawdę reżim 25 00:01:26,090 --> 00:01:29,700 for-- to w zasadzie zasady Zaangażowanie do pracy ze strony internetowej, 26 00:01:29,700 --> 00:01:31,960 podobny do kiedy ktoś Fale swoich sił w tobie, 27 00:01:31,960 --> 00:01:33,410 jesteś ma machać powrotem. 28 00:01:33,410 --> 00:01:36,280 To coś w rodzaju Protokół konwencjonalna ludzka. 29 00:01:36,280 --> 00:01:39,610 Protokół HTTP po prostu mówi, jeśli chcesz poprosić o internecie 30 00:01:39,610 --> 00:01:42,730 Strona, upewnij się, że format wygląd jak this-- rodzaju jak formatowania 31 00:01:42,730 --> 00:01:44,930 list biznesu, na przykład. 32 00:01:44,930 --> 00:01:50,029 I odpowiedź będzie podobnie się zgodnie z tym protokołem. 33 00:01:50,029 --> 00:01:51,820 Istnieją inne protokoły warstwy aplikacji 34 00:01:51,820 --> 00:01:53,380 że nie będziemy rozmawiać w teledyskach. 35 00:01:53,380 --> 00:01:55,790 Ale to takie rzeczy jak Protokół transferu plików, 36 00:01:55,790 --> 00:01:59,200 Simple Mail Transfer Protocol dla wysyłanie e-maili, dystrybucji danych 37 00:01:59,200 --> 00:02:02,100 Usługa Pulpit zdalny Protokół RDP, które 38 00:02:02,100 --> 00:02:05,590 jest używany, jeśli chcesz do zdalnego dostępu komputer z innego komputera, 39 00:02:05,590 --> 00:02:08,479 XMPP, która jest najczęściej znany jako Jabber lub czacie, 40 00:02:08,479 --> 00:02:11,160 tak to jest protokół za korzystanie z usług czatu. 41 00:02:11,160 --> 00:02:13,310 I wiele, wiele, wiele innych. 42 00:02:13,310 --> 00:02:15,900 >> Dlatego za każdym razem używasz usługa, usługa 43 00:02:15,900 --> 00:02:18,930 oczekuje informacji do received-- żądanie 44 00:02:18,930 --> 00:02:21,010 być received-- w sposób bardzo szczególności Format 45 00:02:21,010 --> 00:02:24,070 i wymagane powrót informacje z powrotem 46 00:02:24,070 --> 00:02:27,190 w bardzo określonym formacie, jak również. 47 00:02:27,190 --> 00:02:31,750 >> Więc wróćmy do naszego ilustracji z nas, którzy chcą porozmawiać z internetu. 48 00:02:31,750 --> 00:02:34,810 Więc jesteśmy szczęśliwi i chcemy aby przejść do cats.com, prawda? 49 00:02:34,810 --> 00:02:38,550 Jeśli więc chodzi tylko do cats.com, możemy powiedzieć coś hej, 50 00:02:38,550 --> 00:02:39,720 Widzę stronę główną? 51 00:02:39,720 --> 00:02:42,320 I cats.com będzie prawdopodobnie odpowiada, tak, jasne. 52 00:02:42,320 --> 00:02:43,440 Proszę bardzo. 53 00:02:43,440 --> 00:02:46,440 Tak, że jest człowiekiem sortowania ASK-i-odpowiedzi. 54 00:02:46,440 --> 00:02:47,980 >> Co to wyglądać w HTTP? 55 00:02:47,980 --> 00:02:51,340 Cóż, to rzeczywiście rodzaj tłumaczy dość gładko do czegoś takiego. 56 00:02:51,340 --> 00:02:57,290 Można powiedzieć, GET / HTTP / 1.1 od gospodarza cats.com. 57 00:02:57,290 --> 00:03:03,039 Więc w zasadzie to, co robię tutaj jest z prośbą o www.cats.com/~~pobj strony internetowej. 58 00:03:03,039 --> 00:03:05,330 Zwykle pominąć ukośnik w dzisiejszych czasach, ale to po prostu 59 00:03:05,330 --> 00:03:07,200 oznacza stronę cats.com jest. 60 00:03:07,200 --> 00:03:11,910 >> Aha, i przy okazji, mam zamiar się przy użyciu serwera HTTP 61 00:03:11,910 --> 00:03:14,182 1.1 do komunikowania się z Tobą. 62 00:03:14,182 --> 00:03:16,390 To rodzaj analogiczne do mówiąc, jak, przy okazji, 63 00:03:16,390 --> 00:03:17,870 Idę do mówienia w języku francuskim, a przy okazji, 64 00:03:17,870 --> 00:03:19,370 Ja będę mówić w języku angielskim. 65 00:03:19,370 --> 00:03:22,160 To tylko format protokołu. 66 00:03:22,160 --> 00:03:25,050 Jest to także 1.0, który jest nie powszechnie stosowane już. 67 00:03:25,050 --> 00:03:30,615 Więc mówię protokołu HTTP 1.1, oraz Chciałbym www.cats.com/~~dobj. 68 00:03:30,615 --> 00:03:31,710 Proszę się, że dla mnie. 69 00:03:31,710 --> 00:03:34,610 >> A jeszcze inne informacje, too-- kropka, kropka, kropka tam, 70 00:03:34,610 --> 00:03:38,234 która to informacja o kim jesteś, tak cats.com 71 00:03:38,234 --> 00:03:39,400 nie wiem, gdzie go wysłać. 72 00:03:39,400 --> 00:03:41,480 Ale to są dwie rodzaj części krytycznych 73 00:03:41,480 --> 00:03:44,000 Na samym początku z HTTP request-- 74 00:03:44,000 --> 00:03:46,770 tak jak podczas uruchamiania List można powiedzieć, drogi, puste. 75 00:03:46,770 --> 00:03:49,710 To jest bardzo w duchu podobnym do tego. 76 00:03:49,710 --> 00:03:52,370 >> A jeśli cats.com będzie powiedzieć, oh, pamiętaj, tutaj jesteś. 77 00:03:52,370 --> 00:03:55,590 Mogą odpowiedzieć jak this-- Jestem również reagować. 78 00:03:55,590 --> 00:03:57,960 Zwracam się również z protokołu HTTP 1.1. 79 00:03:57,960 --> 00:04:01,720 Twoje zamówienie zostanie zatwierdzone, 200 OK. 80 00:04:01,720 --> 00:04:04,709 Co masz zamiar otrzymują jest HTML, a następnie 81 00:04:04,709 --> 00:04:06,250 kropka, kropka, kropka dodatkowe informacje. 82 00:04:06,250 --> 00:04:10,620 A na samym dnie wniosek jest rzeczywiście HTML, 83 00:04:10,620 --> 00:04:16,339 język znaczników, Zawartość głównej cats.com jest. 84 00:04:16,339 --> 00:04:21,227 >> Więc HTTP / 1.1-- Potwierdzam swój Wniosek został przyjęty przez HTTP 1.1. 85 00:04:21,227 --> 00:04:22,310 Twoja prośba została przyjęta. 86 00:04:22,310 --> 00:04:25,810 Mogę dać ci to, co chcesz, 200 OK. 87 00:04:25,810 --> 00:04:27,440 Czy na pewno chcesz otrzymywać HTML. 88 00:04:27,440 --> 00:04:30,450 A potem tu jest HTML prosiłeś. 89 00:04:30,450 --> 00:04:33,930 >> Ale czasami nasze żądania nie zawsze iść całkiem zgodnie z planem. 90 00:04:33,930 --> 00:04:37,100 Widzę swoją stronę cats.html? 91 00:04:37,100 --> 00:04:40,366 A co, jeśli mówią, że nie mieć stronę cats.html, 92 00:04:40,366 --> 00:04:42,740 co wydaje się trochę nierealne bo są cats.com. 93 00:04:42,740 --> 00:04:44,400 Można by pomyśleć, że mają cats.html. 94 00:04:44,400 --> 00:04:45,420 Ale ok. 95 00:04:45,420 --> 00:04:48,484 Tak więc jest to swego rodzaju konwencjonalne interakcja człowiek 96 00:04:48,484 --> 00:04:49,650 mamy teraz miał z cats.com. 97 00:04:49,650 --> 00:04:51,060 Jak to tłumaczyć? 98 00:04:51,060 --> 00:04:52,726 >> To może być coś dla ciebie znajomo. 99 00:04:52,726 --> 00:04:55,690 Nasza prośba wyglądał dokładnie tak samo, wyjątkiem zamiast się ukośnik 100 00:04:55,690 --> 00:04:58,110 mamy teraz coraz cats.html. 101 00:04:58,110 --> 00:05:01,810 Więc teraz, co w zasadzie to cała Żądanie mówi się proszę dać mi 102 00:05:01,810 --> 00:05:05,620 www.cats.com/cats.html. 103 00:05:05,620 --> 00:05:08,700 Więc gospodarza i środku częścią tej górnej linii 104 00:05:08,700 --> 00:05:14,632 istnieje dokładnie wskazać, jakie strony proszę o. 105 00:05:14,632 --> 00:05:17,590 Ale cats.com w tym przypadku nie będzie aby móc odpowiedzieć pozytywnie. 106 00:05:17,590 --> 00:05:19,089 Nie wiedzą, że mówimy o. 107 00:05:19,089 --> 00:05:25,170 I tak, to jest coś, możesz mieć widać before-- HTTP 1.1 404 Not Found. 108 00:05:25,170 --> 00:05:27,180 Nie mogłem znaleźć co pan prosi. 109 00:05:27,180 --> 00:05:30,460 Przy okazji, mam zamiar dać powrót niektóre HTML i zwykle, że HTML 110 00:05:30,460 --> 00:05:32,351 oznacza zawartość pewnego 404. 111 00:05:32,351 --> 00:05:34,100 I w przypadku cats.com, to prawdopodobnie 112 00:05:34,100 --> 00:05:37,720 niektóre słodkie koty w koszyku 404 twarzy smutny obok nich, 113 00:05:37,720 --> 00:05:40,920 dlatego, że będzie smutny, gdy nie otrzymasz strony 114 00:05:40,920 --> 00:05:43,040 to, czego szukasz. 115 00:05:43,040 --> 00:05:48,520 >> To rodzaj podstawy, co protokołu, wnioski protokołu HTTP 116 00:05:48,520 --> 00:05:49,180 wygląda jak. 117 00:05:49,180 --> 00:05:52,640 Są bardzo podobne do tego jak by zrobić podobny interakcji 118 00:05:52,640 --> 00:05:55,460 w konwencji po prostu człowieka z prośbą o coś 119 00:05:55,460 --> 00:05:58,250 i odzyskać go i pisanie list i spodziewa się odpowiedzi 120 00:05:58,250 --> 00:06:00,380 List w określonym formacie. 121 00:06:00,380 --> 00:06:03,910 To dość dużo, co HTTP jest tylko canonicalizing 122 00:06:03,910 --> 00:06:10,190 dla wszystkich urządzeń, które chcą uzyskać dostęp strony internetowe, transfery hipertekstowe. 123 00:06:10,190 --> 00:06:15,110 >> Więc linia formie, tego Metoda wersja wniosek celem HTTP, 124 00:06:15,110 --> 00:06:17,100 nazywamy linię żądania HTTP. 125 00:06:17,100 --> 00:06:23,740 Zazwyczaj pierwszą rzeczą, która jest transmitowane jako część żądania HTTP 126 00:06:23,740 --> 00:06:26,180 lub jeśli pytasz HTTP. 127 00:06:26,180 --> 00:06:29,970 To coś w rodzaju, jak powiedziałem, mówiąc: droga, puste na górze listu. 128 00:06:29,970 --> 00:06:32,880 Wiedzą, że jesteś pisząc do nich list. 129 00:06:32,880 --> 00:06:34,796 Więc to jest bardzo podobne do stwierdzenia, wiem 130 00:06:34,796 --> 00:06:37,670 że robisz żądania HTTP a to zwłaszcza w formacie 131 00:06:37,670 --> 00:06:39,090 oni z prośbą o. 132 00:06:39,090 --> 00:06:43,810 >> Wersja HTTP jest prawdopodobnie zawsze będzie HTTP / 01/01. 133 00:06:43,810 --> 00:06:46,670 1.0 również istnieje, ale nie jest Naprawdę już używane. 134 00:06:46,670 --> 00:06:49,200 Dla celów CS50, GET jest prawdopodobnie zawsze 135 00:06:49,200 --> 00:06:51,540 co masz zamiar się za pomocą, gdy jesteś w rzeczywistości 136 00:06:51,540 --> 00:06:54,250 żądaniach HTTP bezpośrednie. 137 00:06:54,250 --> 00:06:57,720 Ale POST jest inną opcję, że jesteśmy Nie będziemy mówić o teraz. 138 00:06:57,720 --> 00:07:02,980 A potem wniosek, celem jest jaka strona na serwerze hosta 139 00:07:02,980 --> 00:07:05,812 chcesz uzyskać. 140 00:07:05,812 --> 00:07:08,020 Jak powiedziałem, że nazwa hosta jest osobna linia, zwykle 141 00:07:08,020 --> 00:07:10,350 druga linia ogólny wniosek. 142 00:07:10,350 --> 00:07:13,660 I tak razem, gospodarza Nazwa i cel wniosku 143 00:07:13,660 --> 00:07:16,070 określić konkretny zasób poszukiwanych. 144 00:07:16,070 --> 00:07:20,986 W naszej 404 przykład druga temu ponownie z prośbą o www.cats.com, 145 00:07:20,986 --> 00:07:22,940 cats.com bycia gospodarzem. 146 00:07:22,940 --> 00:07:26,300 I w moim życzenie linii, Powiedziałem /cats.html. 147 00:07:26,300 --> 00:07:27,790 To był mój cel żądania. 148 00:07:27,790 --> 00:07:31,200 Więc ogólnie rzecz biorąc Pytałem dla treść lub zasób znajduje 149 00:07:31,200 --> 00:07:36,410 w www.cats.com/cats.html~~pobj. 150 00:07:36,410 --> 00:07:38,870 >> A następnie na podstawie tego, czy zasób istnieje 151 00:07:38,870 --> 00:07:42,160 i czy serwer może dostarczyć zasób mocy Klienta 152 00:07:42,160 --> 00:07:46,760 wniosek, można uzyskać różne kody stanu tyłu. 153 00:07:46,760 --> 00:07:50,280 Niektóre z tych kodów stanu widziałeś bo są częścią odpowiedzi. 154 00:07:50,280 --> 00:07:53,580 Niektóre z nich, 200 OK, to chyba dość cichy. 155 00:07:53,580 --> 00:07:55,650 Prawdopodobnie nigdy nie widziałem strona reagować 200 OK. 156 00:07:55,650 --> 00:07:56,890 Wystarczy dostać się na stronę. 157 00:07:56,890 --> 00:08:01,260 To nie tak, błąd 404, która jest zwykle dość jasne. 158 00:08:01,260 --> 00:08:03,850 Zazwyczaj zobaczyć, że mówi 404. 159 00:08:03,850 --> 00:08:06,880 >> Więc porozmawiajmy o tym, co niektórzy z tych kodów stanu może być. 160 00:08:06,880 --> 00:08:09,660 Ponownie, kiedy serwer reaguje na nas, są one 161 00:08:09,660 --> 00:08:12,120 będzie reagować statusu wersji HTTP. 162 00:08:12,120 --> 00:08:14,020 Zazwyczaj HTTP / 1.1. 163 00:08:14,020 --> 00:08:17,410 Co to są te kody stanu będzie? 164 00:08:17,410 --> 00:08:18,890 Cóż, możemy uzyskać sukces. 165 00:08:18,890 --> 00:08:23,617 Więc w kategorii sukcesu, mamy może uzyskać kod 200 z tekstem OK. 166 00:08:23,617 --> 00:08:24,450 Co to znaczy? 167 00:08:24,450 --> 00:08:25,491 Cóż, wszystko jest dobrze. 168 00:08:25,491 --> 00:08:26,721 Zrobiłeś ważnego wniosku. 169 00:08:26,721 --> 00:08:27,720 Oto prawidłowej odpowiedzi. 170 00:08:27,720 --> 00:08:30,060 Byłem w stanie dostarczyć dokładnie to, czego chciał. 171 00:08:30,060 --> 00:08:33,080 >> Czasami można dostać inne rzeczy że nie zauważysz od razu 172 00:08:33,080 --> 00:08:35,140 ale są nieco awarie. 173 00:08:35,140 --> 00:08:36,422 Są one zwane przekierowań. 174 00:08:36,422 --> 00:08:37,630 Są dwa spotykane tutaj. 175 00:08:37,630 --> 00:08:41,520 301 Moved Permanently-- co to w praktyce oznacza 176 00:08:41,520 --> 00:08:43,559 Strona jest obecnie w nowej lokalizacji. 177 00:08:43,559 --> 00:08:44,920 Będzie żyć tam na zawsze. 178 00:08:44,920 --> 00:08:47,150 A większość przeglądarek automatyczne przekierowanie. 179 00:08:47,150 --> 00:08:49,860 Więc nigdy nie będziesz naprawdę zobaczyć 301, albo, chyba, że ​​jesteś 180 00:08:49,860 --> 00:08:52,210 przy użyciu naprawdę out-of-date Przeglądarka ewentualnie 181 00:08:52,210 --> 00:08:57,660 ponieważ odpowiedź 301 jest częścią kropka, kropka, kropka odpowiedzi 301. 182 00:08:57,660 --> 00:08:59,577 Informuje także, gdzie nowa strona jest. 183 00:08:59,577 --> 00:09:01,660 I tak większość przeglądarek po prostu przekierować cię tam, 184 00:09:01,660 --> 00:09:03,570 zakładając, że chcesz tam iść. 185 00:09:03,570 --> 00:09:05,440 >> Czasami można również uzyskać 302 znalezionych. 186 00:09:05,440 --> 00:09:07,850 A ten rzeczywiście może jeszcze zobaczyć od czasu do czasu. 187 00:09:07,850 --> 00:09:09,720 Czasami strona chwilowo się poruszyć. 188 00:09:09,720 --> 00:09:13,570 Więc to nie będzie wbudowany w wniosek informując przeglądarkę 189 00:09:13,570 --> 00:09:16,740 aby trwale zmienić w każdej chwili widzi wniosek, że ci 190 00:09:16,740 --> 00:09:18,255 aby go zmienić na coś innego. 191 00:09:18,255 --> 00:09:21,210 Więc można zobaczyć 302 Znalezione, które w zasadzie 192 00:09:21,210 --> 00:09:22,710 mówi, że to strona mieszka gdzie indziej. 193 00:09:22,710 --> 00:09:24,418 Ale to nie będzie żyją tam na zawsze. 194 00:09:24,418 --> 00:09:29,052 Prawdopodobnie będzie to w końcu iść tam, gdzie myślisz, że jest. 195 00:09:29,052 --> 00:09:31,780 >> Następnie otrzymasz rzeczy jak błędów klienta. 196 00:09:31,780 --> 00:09:34,012 Więc to są te, które już prawdopodobnie widział, teraz. 197 00:09:34,012 --> 00:09:35,970 Prawdopodobnie nie widziałem czy to przez 200s 300s, 198 00:09:35,970 --> 00:09:37,370 ale prawdopodobnie jesteś zna 400s. 199 00:09:37,370 --> 00:09:40,130 I to, co będziemy mówić o w drugim, 500s, jak również. 200 00:09:40,130 --> 00:09:42,580 >> Można zobaczyć 401 Nieautoryzowane. 201 00:09:42,580 --> 00:09:45,100 Zazwyczaj oznacza to, że jesteś próby uzyskania dostępu do strony, 202 00:09:45,100 --> 00:09:46,230 ale nie jesteś zalogowany. 203 00:09:46,230 --> 00:09:50,500 Więc spróbuj i przejdź do niektórych profilu lub coś na Facebooku 204 00:09:50,500 --> 00:09:53,106 lub spróbować i dostęp some-- jesteś w pracy. 205 00:09:53,106 --> 00:09:56,619 Próbujesz uzyskać dostęp do czegoś w internecie twojego dzieła, 206 00:09:56,619 --> 00:09:57,660 ale nie jesteś zalogowany. 207 00:09:57,660 --> 00:09:58,740 Nie możesz znaleźć na stronie. 208 00:09:58,740 --> 00:10:01,770 Możesz dostać 401 nieuprawnione, co oznacza, że ​​prawdopodobnie 209 00:10:01,770 --> 00:10:06,590 będzie w stanie spełnić tego żądania, ale najpierw trzeba zalogować się, aby to zrobić. 210 00:10:06,590 --> 00:10:09,590 >> Odwrotnie, można dostać 403 Forbidden, co jest tak naprawdę nie robi 211 00:10:09,590 --> 00:10:11,490 znaczenia, jeśli nie jesteś zalogowany lub nie. 212 00:10:11,490 --> 00:10:13,020 Wniosek ten nie jest dozwolone. 213 00:10:13,020 --> 00:10:15,320 Zasób istnieje na serwerze. 214 00:10:15,320 --> 00:10:17,817 Ale nie wolno do niego dostęp. 215 00:10:17,817 --> 00:10:20,900 To wewnętrzne, które zwykle pliki Mieszkam na serwerze z różnych powodów 216 00:10:20,900 --> 00:10:23,860 jednak nie mają na celu być dostępne od świata zewnętrznego, 217 00:10:23,860 --> 00:10:25,030 i tak są one zakazane. 218 00:10:25,030 --> 00:10:27,120 Żyją tam. 219 00:10:27,120 --> 00:10:28,440 Nie mówię, że nie mogę go znaleźć. 220 00:10:28,440 --> 00:10:30,030 Ale ja mówię, że nie może dać go do Ciebie. 221 00:10:30,030 --> 00:10:32,071 I nie ma znaczenia, czy nie jesteś zalogowany lub nie. 222 00:10:32,071 --> 00:10:35,479 I wtedy oczywiście, bardzo często 404 Not Found. 223 00:10:35,479 --> 00:10:37,020 Plik nie istnieje na serwerze. 224 00:10:37,020 --> 00:10:40,200 Chciałbym, aby zaspokoić Twój wniosek, ale nie mogę. 225 00:10:40,200 --> 00:10:43,390 >> Ty też czasem zobaczyć serwer błędy, najczęściej na ogół 226 00:10:43,390 --> 00:10:46,990 jest 500 Internal Server Error, które w rzeczywistości nie powiedzieć nic 227 00:10:46,990 --> 00:10:50,200 w ogóle o tym, co poszło nie tak. 228 00:10:50,200 --> 00:10:53,290 Ale to nie jest właściwie robisz błąd w swoim wniosku. 229 00:10:53,290 --> 00:10:58,200 To rzeczywiście serwer braku dostarczyć na żądanie jakoś. 230 00:10:58,200 --> 00:11:00,040 Więc 500 jest ogólna reakcja. 231 00:11:00,040 --> 00:11:03,190 >> Zobaczysz również coś jak Usługa niedostępna, 232 00:11:03,190 --> 00:11:05,720 które uważam, że jest kod 503. 233 00:11:05,720 --> 00:11:07,882 I brama Timeout-- jeśli Czy kiedykolwiek stronę tylko 234 00:11:07,882 --> 00:11:09,590 siedzieć załadunek i załadunku i załadunek 235 00:11:09,590 --> 00:11:12,715 i nigdy nie wiesz, czy to będzie obciążenia, a następnie w końcu to tylko says-- 236 00:11:12,715 --> 00:11:13,650 po prostu rezygnuje. 237 00:11:13,650 --> 00:11:15,460 To jest 504 Brama Timeout. 238 00:11:15,460 --> 00:11:17,600 Serwer chciał wykonać żądania, 239 00:11:17,600 --> 00:11:19,930 ale coś poszło nie tak na side-- serwerze 240 00:11:19,930 --> 00:11:24,452 nie na side-- do spowodować, że będzie problem. 241 00:11:24,452 --> 00:11:27,410 Teraz możemy w końcu tu historię, ale co ja właściwie teraz zrobić 242 00:11:27,410 --> 00:11:29,368 jest Zamierzam otworzyć moja przeglądarka i pokazać, 243 00:11:29,368 --> 00:11:32,250 jak można być w stanie zobaczyć niektóre z tych kodów stanu 244 00:11:32,250 --> 00:11:34,580 nawet jeśli nie na ogół je zobaczyć. 245 00:11:34,580 --> 00:11:39,090 I mamy zamiar to zrobić poprzez Spojrzenie na niektórych narzędzi programistycznych. 246 00:11:39,090 --> 00:11:42,050 >> Dobrze więc oto jestem teraz w oknie mojej przeglądarki. 247 00:11:42,050 --> 00:11:45,840 I chcę, aby dowiedzieć się trochę więcej o tych żądań HTTP. 248 00:11:45,840 --> 00:11:49,060 Jak mogę know-- pewnością wiemy, czy Strona goes--, gdy coś pójdzie nie tak, 249 00:11:49,060 --> 00:11:49,630 mamy 404. 250 00:11:49,630 --> 00:11:50,465 Wszyscy widzieliśmy, że. 251 00:11:50,465 --> 00:11:51,840 Nie musimy się pokazać, że. 252 00:11:51,840 --> 00:11:53,048 Ale jakie są inne te? 253 00:11:53,048 --> 00:11:56,850 I jak widzimy te wnioski w akcji? 254 00:11:56,850 --> 00:11:59,990 >> Tak więc pierwszą rzeczą, którą mam zamiar zrobić, to otworzyć narzędzi dla programistów. 255 00:11:59,990 --> 00:12:02,580 Tak Narzędzia programistyczne są wbudowane w większości nowoczesnych przeglądarek 256 00:12:02,580 --> 00:12:06,020 i pozwala nam widzieć rzeczy że nie inaczej 257 00:12:06,020 --> 00:12:10,580 see-- jakąś informację dodatkową rodzaju są przesyłane pod naszym internecie 258 00:12:10,580 --> 00:12:11,500 wnioski. 259 00:12:11,500 --> 00:12:12,790 Używam tutaj Google Chrome. 260 00:12:12,790 --> 00:12:16,900 I otworzyć Narzędzia dla deweloperów w Chrome, po prostu hit F-12, 261 00:12:16,900 --> 00:12:18,729 i to się dzieje, aby otworzyć go na bok. 262 00:12:18,729 --> 00:12:21,770 Kiedyś wpisać prośbę, będę powiększyć więc możemy zobaczyć, co się tutaj dzieje. 263 00:12:21,770 --> 00:12:28,530 Ale to, co mam zamiar zrobić w mojej przeglądarce bar jest-- i będę powiększać ponad here-- 264 00:12:28,530 --> 00:12:32,427 Będę się z prośbą do www.google.com. 265 00:12:32,427 --> 00:12:34,260 Wszyscy zapewne żądanie to wcześniej. 266 00:12:34,260 --> 00:12:35,400 Mam zamiar naciśnij Enter. 267 00:12:35,400 --> 00:12:41,920 268 00:12:41,920 --> 00:12:46,400 >> Teraz, tutaj w moim Developer Narzędzia, wybrałem kartę Sieć. 269 00:12:46,400 --> 00:12:48,010 I można zauważyć wiele rzeczy tutaj. 270 00:12:48,010 --> 00:12:51,732 Spójrz na these-- 200 OK, 200 OK, niektóre z tych kodów stanu wymyślanie. 271 00:12:51,732 --> 00:12:53,356 Nie wiem, dlaczego Dostaję 302 Znaleziono. 272 00:12:53,356 --> 00:12:54,860 Nie zdawałem sobie sprawy, że widzę, że jeden. 273 00:12:54,860 --> 00:12:58,192 Ale w zasadzie zauważyć, że dość wiele, jeśli chodzi o moją request-- Google 274 00:12:58,192 --> 00:13:00,150 Zrobiłem to bardzo prosta Wniosek o stronie Google. 275 00:13:00,150 --> 00:13:02,890 Oraz w procesie dostarczanie moją prośbę, 276 00:13:02,890 --> 00:13:05,670 Google najwyraźniej zrobił dużo innych wniosków w moim imieniu. 277 00:13:05,670 --> 00:13:11,990 >> Ale zrobiłem zamówienie Pobierz dla Google Strona i Dostaję dużo 200 OKS. 278 00:13:11,990 --> 00:13:14,830 Nie widzę 200 OK ekran, ale jestem coraz 279 00:13:14,830 --> 00:13:17,170 wiele wniosków, które zostały wykonane. 280 00:13:17,170 --> 00:13:19,550 Jeszcze jedno, że jestem całkiem upewnić się uda 281 00:13:19,550 --> 00:13:21,920 jest-- dla tych z Państwa, którzy są naprawdę starej szkoły, 282 00:13:21,920 --> 00:13:26,012 Może wiesz, że Facebook to Nie zawsze na Facebook.com. 283 00:13:26,012 --> 00:13:29,780 W swoich początkach było w wwww.thefacebook.com. 284 00:13:29,780 --> 00:13:33,560 Najwyraźniej nie mógł uzyskać dostępu do Facebook.com już od jakiegoś czasu. 285 00:13:33,560 --> 00:13:35,870 >> A więc to, co Spodziewam tutaj jest, aby uzyskać informacje. 286 00:13:35,870 --> 00:13:37,315 I zobaczymy, czy to miski na zewnątrz. 287 00:13:37,315 --> 00:13:39,190 Co Czekam tutaj jest uzyskanie informacji 288 00:13:39,190 --> 00:13:43,980 że Facebook został przeniesiony na stałe z thefacebook.com na Facebook.com. 289 00:13:43,980 --> 00:13:46,830 Więc spodziewam się gdzieś w górnej części mojej prośby 290 00:13:46,830 --> 00:13:50,730 na moich Developer Tools uzyskać 301 powiadomienia 291 00:13:50,730 --> 00:13:52,580 że Facebook został przeniesiony na stałe. 292 00:13:52,580 --> 00:13:59,070 Ponownie, nie będzie widać 301 na ekranie mojej przeglądarki. 293 00:13:59,070 --> 00:14:01,380 A ponieważ jest to do 301, jest to stałe pojedynek. 294 00:14:01,380 --> 00:14:03,500 Moja przeglądarka jest, że to nowoczesna przeglądarka, 295 00:14:03,500 --> 00:14:06,110 prawdopodobnie będzie przekierować mi Facebook.com tak. 296 00:14:06,110 --> 00:14:07,260 Ale zobaczmy, co się stanie. 297 00:14:07,260 --> 00:14:09,340 >> A teraz mam zamiar przejść do thefacebook.com. 298 00:14:09,340 --> 00:14:11,370 A Tak, tam jest na samym szczycie. 299 00:14:11,370 --> 00:14:13,390 Nie odszedł, ale to było. 300 00:14:13,390 --> 00:14:14,820 Pozwól mi przejść tutaj. 301 00:14:14,820 --> 00:14:18,004 302 00:14:18,004 --> 00:14:18,920 Tu w górze. 303 00:14:18,920 --> 00:14:23,080 I skierował wniosek do thefacebook.com, i dostaję odpowiedź 304 00:14:23,080 --> 00:14:25,410 że ta strona została przeniesiona na stałe. 305 00:14:25,410 --> 00:14:27,770 A następnie 307 tutaj jest wewnętrzne przekierowanie. 306 00:14:27,770 --> 00:14:30,680 A więc to, co jest w rzeczywistości przenieśli mnie do znacznie bardziej 307 00:14:30,680 --> 00:14:33,330 zaznajomieni www.facebook.com. 308 00:14:33,330 --> 00:14:38,480 >> Więc te kody odpowiedzi robić nadal stało, nawet jeśli ich nie widzę. 309 00:14:38,480 --> 00:14:40,710 nie mam zamiaru ilustrują 401, 403, 404, 310 00:14:40,710 --> 00:14:43,090 dlatego, że prawdopodobnie widział te w różnych punktach. 311 00:14:43,090 --> 00:14:45,740 I 500, chciałbym po prostu być rodzaj of-- że będziemy mieć szczęście 312 00:14:45,740 --> 00:14:50,380 jeśli dostał 500, ponieważ nie wiemy, co Serwery są obecnie w dowolnym miejscu. 313 00:14:50,380 --> 00:14:53,060 Ale te kody zrobić istnieje i jest na to sposób 314 00:14:53,060 --> 00:14:58,610 aby uzyskać do nich dostęp, nawet jeśli tego nie zrobimy zobaczyć je na własne oczy w naszych systemach. 315 00:14:58,610 --> 00:14:59,530 Jestem Doug Lloyd. 316 00:14:59,530 --> 00:15:01,570 To CS50. 317 00:15:01,570 --> 00:15:03,557