1 00:00:00,000 --> 00:00:05,950 2 00:00:05,950 --> 00:00:09,310 >> SPEAKER: Laten we praten over een ander protocol-- het Hypertext Transfer 3 00:00:09,310 --> 00:00:12,060 Protocol, of HTTP. 4 00:00:12,060 --> 00:00:15,074 Dus we hebben gesproken over IP en TCP in de vorige video's. 5 00:00:15,074 --> 00:00:17,240 En dat zijn protocollen die bepalen hoe de informatie 6 00:00:17,240 --> 00:00:20,970 bewegingen van machine tot machine en per programma of dienst 7 00:00:20,970 --> 00:00:27,720 aan de dienst via het internet, via dit netwerk van routers en machines. 8 00:00:27,720 --> 00:00:30,640 >> Maar dat is meestal niet het hele beeld, toch? 9 00:00:30,640 --> 00:00:33,530 Meestal als we sturen gegevens, het programma 10 00:00:33,530 --> 00:00:36,570 itself-- wanneer gegevens is ontvangen, zeg bijvoorbeeld 11 00:00:36,570 --> 00:00:44,270 in e-mail via TCP poort 25 of webpagina verzoek via poort 80, 12 00:00:44,270 --> 00:00:48,220 er is meestal een systeem van regels is er om te verwerken wat ik zojuist heb ontvangen. 13 00:00:48,220 --> 00:00:51,960 En HTTP is een voorbeeld van zo'n protocol. 14 00:00:51,960 --> 00:00:54,929 >> HTTP is de enige applicatielaag protocol 15 00:00:54,929 --> 00:00:56,220 dat we gaan om te praten over. 16 00:00:56,220 --> 00:00:59,660 Maar het is een andere set regels dicteren hoe 17 00:00:59,660 --> 00:01:02,790 informatie dient te worden doorgegeven en verwerkt via het internet. 18 00:01:02,790 --> 00:01:06,390 Vooral HTTP specificeert hoe 19 00:01:06,390 --> 00:01:11,300 men moet een verzoek doen een webpagina en precies hoe 20 00:01:11,300 --> 00:01:15,160 een server, een machine dat hosts webpagina's, 21 00:01:15,160 --> 00:01:17,840 levert die informatie terug naar klanten. 22 00:01:17,840 --> 00:01:20,010 >> Dus dit protocol niet daadwerkelijk iets hebben 23 00:01:20,010 --> 00:01:22,270 te maken met hoe informatie beweegt van punt A 24 00:01:22,270 --> 00:01:26,090 punt B. Het is echt het stelsel van regels 25 00:01:26,090 --> 00:01:29,700 voor-- het is eigenlijk de regels van inzet voor het werken met een webpagina, 26 00:01:29,700 --> 00:01:31,960 Soortgelijke wanneer iemand golven hun hand op je af, 27 00:01:31,960 --> 00:01:33,410 je verondersteld om terug te zwaaien. 28 00:01:33,410 --> 00:01:36,280 Dat is een soort van conventionele menselijke protocol. 29 00:01:36,280 --> 00:01:39,610 HTTP-protocol gewoon zegt, als je wilt een web aanvragen 30 00:01:39,610 --> 00:01:42,730 pagina, zorg ervoor dat uw formaat looks zoals dit-- soort als opmaak 31 00:01:42,730 --> 00:01:44,930 een zakelijke brief, bijvoorbeeld. 32 00:01:44,930 --> 00:01:50,029 En het antwoord zal op dezelfde wijze komen volgens dit protocol. 33 00:01:50,029 --> 00:01:51,820 Er zijn andere applicatielaag protocollen 34 00:01:51,820 --> 00:01:53,380 dat we niet van plan om praten in video's. 35 00:01:53,380 --> 00:01:55,790 Maar deze dingen zoals het File Transfer Protocol, 36 00:01:55,790 --> 00:01:59,200 Simple Mail Transfer Protocol het verzenden van e-mails, de Data Distribution 37 00:01:59,200 --> 00:02:02,100 Service, Remote Desktop Protocol, RDP, dat 38 00:02:02,100 --> 00:02:05,590 wordt gebruikt als u op afstand toegang uw computer vanaf een andere computer, 39 00:02:05,590 --> 00:02:08,479 XMPP, die vaak is bekend als Jabber of chatten, 40 00:02:08,479 --> 00:02:11,160 dus dit is het protocol voor het gebruik van chatdiensten. 41 00:02:11,160 --> 00:02:13,310 En er zijn vele, vele, vele anderen. 42 00:02:13,310 --> 00:02:15,900 >> Dus elke keer dat je gebruikt een dienst, de dienst 43 00:02:15,900 --> 00:02:18,930 verwacht informatie een verzoek om te worden received-- 44 00:02:18,930 --> 00:02:21,010 received-- in te zeer bijzonder formaat 45 00:02:21,010 --> 00:02:24,070 en is nodig om terug informatie terug 46 00:02:24,070 --> 00:02:27,190 in een bepaald formaat ook. 47 00:02:27,190 --> 00:02:31,750 >> Dus laten we gaan terug naar onze illustratie wij willen het internet te praten. 48 00:02:31,750 --> 00:02:34,810 Dus we zijn blij, en we willen naar cats.com, toch? 49 00:02:34,810 --> 00:02:38,550 Dus als we gewoon praten met cats.com, We zouden kunnen zeggen iets als hey, 50 00:02:38,550 --> 00:02:39,720 kan ik uw startpagina zien? 51 00:02:39,720 --> 00:02:42,320 En cats.com zal waarschijnlijk reageren, ja, zeker. 52 00:02:42,320 --> 00:02:43,440 Alsjeblieft. 53 00:02:43,440 --> 00:02:46,440 Dus dat is een menselijke soort van vraag-en-antwoord. 54 00:02:46,440 --> 00:02:47,980 >> Wat betekent dat eruit in HTTP? 55 00:02:47,980 --> 00:02:51,340 Nou, het eigenlijk wel vertaalt vrij netjes om zoiets. 56 00:02:51,340 --> 00:02:57,290 We zouden kunnen zeggen GET / HTTP / 1.1 van host cats.com. 57 00:02:57,290 --> 00:03:03,039 Dus eigenlijk wat ik hier aan het doen is vraagt ​​de webpagina www.cats.com/. 58 00:03:03,039 --> 00:03:05,330 We weglaten meestal de slash tegenwoordig, maar dat zou slechts 59 00:03:05,330 --> 00:03:07,200 bedoel cats.com homepage. 60 00:03:07,200 --> 00:03:11,910 >> Oh, en door de manier, ik ga te zijn met behulp van HTTP-versie 61 00:03:11,910 --> 00:03:14,182 1.1 met u te communiceren. 62 00:03:14,182 --> 00:03:16,390 Dat is een soort van analoog aan zeggen, als, door de manier, 63 00:03:16,390 --> 00:03:17,870 Ik ga spreken in het Frans, of door de manier, 64 00:03:17,870 --> 00:03:19,370 Ik ga om te spreken in het Engels. 65 00:03:19,370 --> 00:03:22,160 Dat is gewoon het formaat van het protocol. 66 00:03:22,160 --> 00:03:25,050 Ook is 1,0, wat niet meer algemeen gebruikt. 67 00:03:25,050 --> 00:03:30,615 Dus ik spreek HTTP 1.1, en Ik wil graag www.cats.com/. 68 00:03:30,615 --> 00:03:31,710 Neem dat voor mij. 69 00:03:31,710 --> 00:03:34,610 >> En dan is er nog andere informatie, too-- de stip, punt, punt daar, 70 00:03:34,610 --> 00:03:38,234 die informatie over wie je bent zo cats.com 71 00:03:38,234 --> 00:03:39,400 zou weten waar om het te verzenden. 72 00:03:39,400 --> 00:03:41,480 Maar dit zijn de twee soort van kritische onderdelen 73 00:03:41,480 --> 00:03:44,000 aan het begin van een HTTP request-- 74 00:03:44,000 --> 00:03:46,770 net als wanneer je begint een letter u zegt, lieve, leeg. 75 00:03:46,770 --> 00:03:49,710 Dit is zeer vergelijkbaar met die in de geest. 76 00:03:49,710 --> 00:03:52,370 >> En als cats.com gaat zeggen, oh, zeker, hier ga je. 77 00:03:52,370 --> 00:03:55,590 Ze kunnen reageren als dit-- Ik ben ook reageert. 78 00:03:55,590 --> 00:03:57,960 Ik spreek ook HTTP 1.1. 79 00:03:57,960 --> 00:04:01,720 Uw aanvraag wordt goedgekeurd, 200 OK. 80 00:04:01,720 --> 00:04:04,709 Wat je staat op het punt ontvangen is HTML en vervolgens 81 00:04:04,709 --> 00:04:06,250 dot, dot, dot wat extra informatie. 82 00:04:06,250 --> 00:04:10,620 En aan de onderkant van de verzoek eigenlijk de HTML, 83 00:04:10,620 --> 00:04:16,339 de opmaaktaal, de inhoud van cats.com homepage. 84 00:04:16,339 --> 00:04:21,227 >> Dus HTTP / 1.1-- Ik erken uw verzoek werd via HTTP 1.1 geaccepteerd. 85 00:04:21,227 --> 00:04:22,310 Uw aanvraag werd goedgekeurd. 86 00:04:22,310 --> 00:04:25,810 Ik kan je geven wat je wilt, 200 OK. 87 00:04:25,810 --> 00:04:27,440 Je staat op HTML ontvangen. 88 00:04:27,440 --> 00:04:30,450 En dan is hier de HTML die u hebt aangevraagd. 89 00:04:30,450 --> 00:04:33,930 >> Maar soms onze verzoeken niet altijd vrij volgens plan. 90 00:04:33,930 --> 00:04:37,100 Kan ik je cats.html pagina te zien? 91 00:04:37,100 --> 00:04:40,366 Nou, wat als ze zeggen, we niet een cats.html pagina hebben, 92 00:04:40,366 --> 00:04:42,740 die lijkt soort onrealistisch omdat ze cats.com. 93 00:04:42,740 --> 00:04:44,400 Je zou denken dat ze cats.html zou hebben. 94 00:04:44,400 --> 00:04:45,420 Maar ok. 95 00:04:45,420 --> 00:04:48,484 Dus dit is een soort van de conventionele menselijke interactie 96 00:04:48,484 --> 00:04:49,650 we hebben nu gehad met cats.com. 97 00:04:49,650 --> 00:04:51,060 Hoe werkt dat vertalen? 98 00:04:51,060 --> 00:04:52,726 >> Dit zou iets bekend voorkomen. 99 00:04:52,726 --> 00:04:55,690 Ons verzoek zag er precies hetzelfde, behalve in plaats van het krijgen van slash 100 00:04:55,690 --> 00:04:58,110 we nu krijgen cats.html. 101 00:04:58,110 --> 00:05:01,810 Dus wat nu eigenlijk deze hele verzoek is te zeggen is geef me 102 00:05:01,810 --> 00:05:05,620 www.cats.com/cats.html. 103 00:05:05,620 --> 00:05:08,700 Dus de gastheer en de middelste deel van die top line 104 00:05:08,700 --> 00:05:14,632 er precies aan te geven welke pagina ik vraag. 105 00:05:14,632 --> 00:05:17,590 Cats.com maar in dit geval is niet van plan kunnen positief te reageren. 106 00:05:17,590 --> 00:05:19,089 Ze weten niet waar we het over. 107 00:05:19,089 --> 00:05:25,170 En dus dit is iets wat je zou kunnen hebben gezien before-- HTTP 1.1 404 Not Found. 108 00:05:25,170 --> 00:05:27,180 Ik kon niet wat vinden je vraagt. 109 00:05:27,180 --> 00:05:30,460 By the way, ik ga u terug wat HTML, en meestal die HTML 110 00:05:30,460 --> 00:05:32,351 is de inhoud van een aantal 404 pagina. 111 00:05:32,351 --> 00:05:34,100 En in het geval van cats.com, is het waarschijnlijk 112 00:05:34,100 --> 00:05:37,720 sommige leuke katten in een mand met een droevig gezicht 404 naast hen, 113 00:05:37,720 --> 00:05:40,920 want je gaat worden triest als je niet pagina te krijgen 114 00:05:40,920 --> 00:05:43,040 die je zocht. 115 00:05:43,040 --> 00:05:48,520 >> Dat is een soort van de basis van wat een protocol, het HTTP-protocol aanvragen 116 00:05:48,520 --> 00:05:49,180 lijkt op. 117 00:05:49,180 --> 00:05:52,640 Ze zijn echt vergelijkbaar met hoe we zou een vergelijkbare interactie maken 118 00:05:52,640 --> 00:05:55,460 in slechts menselijke conventies vragen voor iets 119 00:05:55,460 --> 00:05:58,250 en het krijgen van het weer of het schrijven van een brief en verwacht een reactie 120 00:05:58,250 --> 00:06:00,380 letter in een bepaald formaat. 121 00:06:00,380 --> 00:06:03,910 Dat is vrij veel wat HTTP is gewoon canonicalizing 122 00:06:03,910 --> 00:06:10,190 voor alle apparaten die toegang wilt webpagina's, hypertext transfer. 123 00:06:10,190 --> 00:06:15,110 >> Dus een lijn van het formulier, dit de methode verzoek doel HTTP-versie, 124 00:06:15,110 --> 00:06:17,100 wordt een HTTP-aanvraag lijn genaamd. 125 00:06:17,100 --> 00:06:23,740 Het is meestal het eerste ding dat is uitgezonden als deel van een HTTP verzoek 126 00:06:23,740 --> 00:06:26,180 of als je vraagt ​​voor HTTP. 127 00:06:26,180 --> 00:06:29,970 Het is een soort van willen, zoals ik al zei, zeggende lieve, blanco bovenaan uw brief. 128 00:06:29,970 --> 00:06:32,880 Ze weten dat je bent schrijft ze een brief. 129 00:06:32,880 --> 00:06:34,796 Dus dit is zeer vergelijkbaar te zeggen, ik weet 130 00:06:34,796 --> 00:06:37,670 dat ze het maken van een HTTP-verzoek en dit is bepaald formaat 131 00:06:37,670 --> 00:06:39,090 ze vragen voor. 132 00:06:39,090 --> 00:06:43,810 >> HTTP versie is waarschijnlijk altijd gaat om HTTP / 01/01 zijn. 133 00:06:43,810 --> 00:06:46,670 1,0 bestaat ook, maar is niet echt meer gebruikt. 134 00:06:46,670 --> 00:06:49,200 Voor de toepassing van CS50, GET is waarschijnlijk altijd 135 00:06:49,200 --> 00:06:51,540 wat je gaat worden gebruik wanneer u daadwerkelijk bent 136 00:06:51,540 --> 00:06:54,250 waardoor directe HTTP-aanvragen. 137 00:06:54,250 --> 00:06:57,720 Maar POST is een andere optie die we niet gaan praten over nu. 138 00:06:57,720 --> 00:07:02,980 En dan vraag-target is welke pagina op de server van de gastheer 139 00:07:02,980 --> 00:07:05,812 je zou willen krijgen. 140 00:07:05,812 --> 00:07:08,020 Zoals ik al zei, dat de hostnaam is een aparte lijn, meestal 141 00:07:08,020 --> 00:07:10,350 de tweede regel van de totale aanvraag. 142 00:07:10,350 --> 00:07:13,660 En zo samen genomen, de gastheer de naam en het verzoek doel 143 00:07:13,660 --> 00:07:16,070 geef een specifieke resource wordt gezocht. 144 00:07:16,070 --> 00:07:20,986 In onze 404 bijvoorbeeld een tweede geleden, ik werd opnieuw vragen om www.cats.com, 145 00:07:20,986 --> 00:07:22,940 cats.com zijnde de gastheer. 146 00:07:22,940 --> 00:07:26,300 En in mijn verzoek lijn, Ik zei /cats.html. 147 00:07:26,300 --> 00:07:27,790 Dat was mijn verzoek doel. 148 00:07:27,790 --> 00:07:31,200 Dus over het algemeen was ik vragen voor de inhoud of de bron gelegen 149 00:07:31,200 --> 00:07:36,410 bij www.cats.com/cats.html. 150 00:07:36,410 --> 00:07:38,870 >> En vervolgens afhankelijk van of de bron bestaat 151 00:07:38,870 --> 00:07:42,160 en of de server kan leveren de middelen overeenkomstig de cliënt 152 00:07:42,160 --> 00:07:46,760 verzoek, misschien krijg je verschillende statuscodes terug. 153 00:07:46,760 --> 00:07:50,280 Sommige van deze status van codes die u hebt gezien omdat ze een deel van het antwoord. 154 00:07:50,280 --> 00:07:53,580 Sommigen van hen, 200 OK, zijn waarschijnlijk vrij stil. 155 00:07:53,580 --> 00:07:55,650 U hebt waarschijnlijk nog nooit gezien een pagina reageren 200 OK. 156 00:07:55,650 --> 00:07:56,890 U krijgt alleen de pagina. 157 00:07:56,890 --> 00:08:01,260 Het is niet zoals een 404-fout, die meestal vrij duidelijk. 158 00:08:01,260 --> 00:08:03,850 Je ziet meestal dat het zegt 404. 159 00:08:03,850 --> 00:08:06,880 >> Dus laten we praten over wat sommige van de status van codes kan zijn. 160 00:08:06,880 --> 00:08:09,660 Ook wanneer de server reageert op ons, ze zijn 161 00:08:09,660 --> 00:08:12,120 gaat HTTP-versie staat te reageren. 162 00:08:12,120 --> 00:08:14,020 Meestal HTTP / 1.1. 163 00:08:14,020 --> 00:08:17,410 Wat zijn deze statuscodes gaat worden? 164 00:08:17,410 --> 00:08:18,890 Nou, misschien krijgen we een succes. 165 00:08:18,890 --> 00:08:23,617 Dus in de categorie succes, we misschien code 200 krijgen met de tekst OK. 166 00:08:23,617 --> 00:08:24,450 Wat betekent dit? 167 00:08:24,450 --> 00:08:25,491 Nou ja, alles is goed. 168 00:08:25,491 --> 00:08:26,721 U heeft een geldige aanvraag. 169 00:08:26,721 --> 00:08:27,720 Hier is een geldig antwoord. 170 00:08:27,720 --> 00:08:30,060 Ik was in staat om te leveren precies wat je wilde. 171 00:08:30,060 --> 00:08:33,080 >> Soms kun je andere dingen dat je niet meteen zal merken 172 00:08:33,080 --> 00:08:35,140 maar zijn enigszins mislukkingen. 173 00:08:35,140 --> 00:08:36,422 Ze zijn genoemd omleidingen. 174 00:08:36,422 --> 00:08:37,630 Er zijn twee voorkomende hier. 175 00:08:37,630 --> 00:08:41,520 301 Moved Permanently-- wat dit betekent in feite 176 00:08:41,520 --> 00:08:43,559 is de pagina is nu op een nieuwe locatie. 177 00:08:43,559 --> 00:08:44,920 Het zal er voor eeuwig leven. 178 00:08:44,920 --> 00:08:47,150 En de meeste browsers automatisch doorverwijzen. 179 00:08:47,150 --> 00:08:49,860 Zodat je nooit echt zien een 301, ofwel, tenzij je 180 00:08:49,860 --> 00:08:52,210 met behulp van een echt out-of-date browser, eventueel, 181 00:08:52,210 --> 00:08:57,660 omdat de respons 301 is onderdeel van de stip, punt, punt van de 301 respons. 182 00:08:57,660 --> 00:08:59,577 Het vertelt je ook waar de nieuwe pagina is. 183 00:08:59,577 --> 00:09:01,660 En dus de meeste browsers gewoon redirect je daar, 184 00:09:01,660 --> 00:09:03,570 ervan uitgaande dat u wilt er naartoe te gaan. 185 00:09:03,570 --> 00:09:05,440 >> Soms krijg je ook 302 gevonden. 186 00:09:05,440 --> 00:09:07,850 En degene die je eigenlijk misschien nog steeds af en toe zien. 187 00:09:07,850 --> 00:09:09,720 Soms pagina's te verplaatsen tijdelijk. 188 00:09:09,720 --> 00:09:13,570 Dus het is niet van plan om te worden ingebouwd in het verzoek vertelt de browser 189 00:09:13,570 --> 00:09:16,740 te allen tijde permanent te wijzigen hij ziet het verzoek dat u 190 00:09:16,740 --> 00:09:18,255 maken om het te veranderen naar iets anders. 191 00:09:18,255 --> 00:09:21,210 Dus je zou kunnen zien 302 Gevonden, die in feite 192 00:09:21,210 --> 00:09:22,710 zegt deze pagina woont ergens anders. 193 00:09:22,710 --> 00:09:24,418 Maar het is niet van plan om Er wonen in eeuwigheid. 194 00:09:24,418 --> 00:09:29,052 Het zal uiteindelijk waarschijnlijk gaan terug naar waar je denkt dat het is. 195 00:09:29,052 --> 00:09:31,780 >> Dan zul je dingen als opdrachtgever fouten. 196 00:09:31,780 --> 00:09:34,012 Dus dit zijn degenen die je hebt waarschijnlijk gezien, nu. 197 00:09:34,012 --> 00:09:35,970 Je hebt waarschijnlijk nog niet gezien de 200s of 300s, 198 00:09:35,970 --> 00:09:37,370 maar je bent waarschijnlijk vertrouwd met de 400s. 199 00:09:37,370 --> 00:09:40,130 En dat is wat we praten over in een tweede, 500s ook. 200 00:09:40,130 --> 00:09:42,580 >> Je zou kunnen zien 401 Unauthorized. 201 00:09:42,580 --> 00:09:45,100 Meestal betekent dit dat u bent proberen om toegang te krijgen tot een pagina, 202 00:09:45,100 --> 00:09:46,230 maar je hebt niet ingelogd. 203 00:09:46,230 --> 00:09:50,500 Dus je probeert te gaan naar een profiel of iets op Facebook 204 00:09:50,500 --> 00:09:53,106 of u probeert toegang some-- je op het werk. 205 00:09:53,106 --> 00:09:56,619 Je probeert toegang te krijgen tot iets op internet van je werk, 206 00:09:56,619 --> 00:09:57,660 maar je bent niet ingelogd. 207 00:09:57,660 --> 00:09:58,740 Je kunt niet zien de pagina. 208 00:09:58,740 --> 00:10:01,770 Je zou kunnen krijgen een 401 onbevoegde, wat betekent dat we waarschijnlijk 209 00:10:01,770 --> 00:10:06,590 kan dit verzoek te voldoen zal zijn, maar eerst je nodig hebt om in te loggen om dit te doen. 210 00:10:06,590 --> 00:10:09,590 >> Omgekeerd zou je krijgt 403 Verboden, dat is het niet echt 211 00:10:09,590 --> 00:10:11,490 uit als je ingelogd bent of niet. 212 00:10:11,490 --> 00:10:13,020 Dit verzoek is niet toegestaan. 213 00:10:13,020 --> 00:10:15,320 De bron bestaat op de server. 214 00:10:15,320 --> 00:10:17,817 Maar u bent niet toegestaan ​​om toegang te krijgen. 215 00:10:17,817 --> 00:10:20,900 Dit is meestal interne bestanden live op de server om diverse redenen 216 00:10:20,900 --> 00:10:23,860 maar zijn niet bedoeld om toegankelijk vanuit de buitenwereld, 217 00:10:23,860 --> 00:10:25,030 en dus zijn ze verboden. 218 00:10:25,030 --> 00:10:27,120 Ze leven daar. 219 00:10:27,120 --> 00:10:28,440 Ik zeg niet dat ik kan het niet vinden. 220 00:10:28,440 --> 00:10:30,030 Maar ik zeg kan ik niet geven. 221 00:10:30,030 --> 00:10:32,071 En het maakt niet uit of je ingelogd bent of niet. 222 00:10:32,071 --> 00:10:35,479 En dan natuurlijk, de heel gebruikelijk 404 Not Found. 223 00:10:35,479 --> 00:10:37,020 Het bestand bestaat niet op de server. 224 00:10:37,020 --> 00:10:40,200 Ik zou graag willen bevredigen uw verzoek, maar ik kan het niet. 225 00:10:40,200 --> 00:10:43,390 >> Je soms ook zien server fouten, de meest algemeen 226 00:10:43,390 --> 00:10:46,990 zijnde 500 Internal Server Error, die niet je eigenlijk iets vertellen 227 00:10:46,990 --> 00:10:50,200 helemaal over wat er mis is gegaan. 228 00:10:50,200 --> 00:10:53,290 Maar het is niet echt je maakt een fout in uw verzoek. 229 00:10:53,290 --> 00:10:58,200 Het is eigenlijk de server falende te leveren op het verzoek een of andere manier. 230 00:10:58,200 --> 00:11:00,040 Dus 500 is de algemene reactie. 231 00:11:00,040 --> 00:11:03,190 >> U zult ook iets zien zoals Service niet beschikbaar, 232 00:11:03,190 --> 00:11:05,720 waarvan ik denk dat de code 503. 233 00:11:05,720 --> 00:11:07,882 En Gateway Timeout-- als je ooit een pagina had net 234 00:11:07,882 --> 00:11:09,590 zitten er laad- en laden en laden 235 00:11:09,590 --> 00:11:12,715 en je weet nooit wanneer het gaat om laden en dan uiteindelijk het gewoon says-- 236 00:11:12,715 --> 00:11:13,650 gewoon opgeeft. 237 00:11:13,650 --> 00:11:15,460 Dat is een 504 Gateway Timeout. 238 00:11:15,460 --> 00:11:17,600 De server wilde uw verzoek uit te voeren, 239 00:11:17,600 --> 00:11:19,930 maar ging er iets mis op de server side-- 240 00:11:19,930 --> 00:11:24,452 niet op uw side-- naar leiden dat een probleem. 241 00:11:24,452 --> 00:11:27,410 Nu kunnen we het verhaal eindigt hier, maar wat ik eigenlijk nu doen 242 00:11:27,410 --> 00:11:29,368 is dat ik ga openstellen mijn browser en je laten zien 243 00:11:29,368 --> 00:11:32,250 hoe je zou kunnen zien een aantal van deze statuscodes 244 00:11:32,250 --> 00:11:34,580 zelfs als je niet over het algemeen zien. 245 00:11:34,580 --> 00:11:39,090 En we gaan dat doen door het nemen van een kijken naar enkele developer tools. 246 00:11:39,090 --> 00:11:42,050 >> Oké Dus hier ben ik nu in mijn raam browser. 247 00:11:42,050 --> 00:11:45,840 En ik wil een beetje te leren meer over deze HTTP-verzoeken. 248 00:11:45,840 --> 00:11:49,060 Hoe kan ik weten-- zeker dat we weten of een pagina goes-- als er iets mis gaat, 249 00:11:49,060 --> 00:11:49,630 krijgen we een 404. 250 00:11:49,630 --> 00:11:50,465 We hebben allemaal gezien dat. 251 00:11:50,465 --> 00:11:51,840 We hoeven niet te illustreren dat. 252 00:11:51,840 --> 00:11:53,048 Maar wat zijn sommige anderen? 253 00:11:53,048 --> 00:11:56,850 En hoe zouden we zien deze verzoeken in actie? 254 00:11:56,850 --> 00:11:59,990 >> Dus eerste wat ik ga doen is het openstellen van Developer Tools. 255 00:11:59,990 --> 00:12:02,580 Dus Developer Tools worden gebouwd in de meeste moderne browsers 256 00:12:02,580 --> 00:12:06,020 en stellen ons in staat dingen te zien dat we niet anders 257 00:12:06,020 --> 00:12:10,580 see-- wat extra informatie soort onder onze web verzonden 258 00:12:10,580 --> 00:12:11,500 verzoeken. 259 00:12:11,500 --> 00:12:12,790 Ik gebruik Google Chrome hier. 260 00:12:12,790 --> 00:12:16,900 En Developer Tools openen in Chrome, je gewoon op F-12, 261 00:12:16,900 --> 00:12:18,729 en het gaat om te openen het op de zijkant. 262 00:12:18,729 --> 00:12:21,770 Zodra ik het verzoek te typen, zal ik in te zoomen zodat we kunnen zien wat er aan de hand hier. 263 00:12:21,770 --> 00:12:28,530 Maar wat ik ga doen in mijn browser bar is-- en ik zal inzoomen op hier-- 264 00:12:28,530 --> 00:12:32,427 Ik zal een verzoek naar www.google.com maken. 265 00:12:32,427 --> 00:12:34,260 We hebben allemaal waarschijnlijk gemaakt dit verzoek eerder. 266 00:12:34,260 --> 00:12:35,400 Ik ga druk op Enter. 267 00:12:35,400 --> 00:12:41,920 268 00:12:41,920 --> 00:12:46,400 >> Nu, hier in mijn Developer Gereedschappen, heb ik gekozen voor het tabblad Netwerk. 269 00:12:46,400 --> 00:12:48,010 En je merkt een heleboel dingen hier. 270 00:12:48,010 --> 00:12:51,732 Kijk naar these-- 200 OK, 200 OK, sommige van deze statuscodes komen. 271 00:12:51,732 --> 00:12:53,356 Ik weet niet waarom ik krijg 302 Gevonden. 272 00:12:53,356 --> 00:12:54,860 Ik wist niet dat ik dat te zien. 273 00:12:54,860 --> 00:12:58,192 Maar in principe zien dat vrij veel, in termen van mijn Google request-- 274 00:12:58,192 --> 00:13:00,150 Ik maakte een zeer eenvoudige verzoek om Google's pagina. 275 00:13:00,150 --> 00:13:02,890 En in het proces van het leveren van mijn verzoek, 276 00:13:02,890 --> 00:13:05,670 Google heeft blijkbaar veel van andere verzoeken namens mij. 277 00:13:05,670 --> 00:13:11,990 >> Maar ik heb een get verzoek om Google's gemaakt pagina en ik krijg veel van 200 OKs. 278 00:13:11,990 --> 00:13:14,830 Ik ben niet het zien van 200 op OK mijn scherm, maar ik krijg 279 00:13:14,830 --> 00:13:17,170 veel verzoeken die zijn gedaan. 280 00:13:17,170 --> 00:13:19,550 Een meer dat ik ben er vrij dat gaat werken 281 00:13:19,550 --> 00:13:21,920 is-- voor degenen onder u die zijn echt oud-school, 282 00:13:21,920 --> 00:13:26,012 u wellicht weet dat Facebook was niet altijd op Facebook.com. 283 00:13:26,012 --> 00:13:29,780 In zijn vroege dagen was bij wwww.thefacebook.com. 284 00:13:29,780 --> 00:13:33,560 Ze konden blijkbaar geen toegang krijgen om Facebook.com voor heel even. 285 00:13:33,560 --> 00:13:35,870 >> En dus wat ik verwacht hier is om informatie te krijgen. 286 00:13:35,870 --> 00:13:37,315 En we zullen zien of dit uitpakt. 287 00:13:37,315 --> 00:13:39,190 Wat ik hier verwacht is om informatie te krijgen 288 00:13:39,190 --> 00:13:43,980 dat Facebook permanent is verplaatst van thefacebook.com aan Facebook.com. 289 00:13:43,980 --> 00:13:46,830 Dus ik ben ergens verwacht in de buurt van de top van mijn verzoeken 290 00:13:46,830 --> 00:13:50,730 meer dan in mijn Developer Tools een melding 301 krijgt 291 00:13:50,730 --> 00:13:52,580 dat Facebook permanent is verplaatst. 292 00:13:52,580 --> 00:13:59,070 Nogmaals, ik zal niet te zien 301 Op het scherm van mijn browser. 293 00:13:59,070 --> 00:14:01,380 En omdat het een 301, het is een permanente verhuizing. 294 00:14:01,380 --> 00:14:03,500 Mijn browser, is dat Het is een moderne browser 295 00:14:03,500 --> 00:14:06,110 is waarschijnlijk gaan om te buigen ik Facebook.com toch. 296 00:14:06,110 --> 00:14:07,260 Maar laten we eens kijken wat er gebeurt. 297 00:14:07,260 --> 00:14:09,340 >> En nu ga ik ga naar thefacebook.com. 298 00:14:09,340 --> 00:14:11,370 En yep, daar is het recht op de top. 299 00:14:11,370 --> 00:14:13,390 Het ging weg, maar het was er. 300 00:14:13,390 --> 00:14:14,820 Laat me bladeren hier. 301 00:14:14,820 --> 00:14:18,004 302 00:14:18,004 --> 00:14:18,920 Hier bij de top. 303 00:14:18,920 --> 00:14:23,080 Ik maakte een verzoek thefacebook.com, en ik krijg een reactie 304 00:14:23,080 --> 00:14:25,410 dat deze pagina permanent is verplaatst. 305 00:14:25,410 --> 00:14:27,770 En dan 307 is hier een interne redirect. 306 00:14:27,770 --> 00:14:30,680 En dus dit is wat er daadwerkelijk heeft verhuisden me naar de veel meer 307 00:14:30,680 --> 00:14:33,330 vertrouwd www.facebook.com. 308 00:14:33,330 --> 00:14:38,480 >> Dus deze response codes doen nog steeds gebeuren, zelfs als we ze niet zien. 309 00:14:38,480 --> 00:14:40,710 dat ga ik niet doen illustreren 401, 403, 404, 310 00:14:40,710 --> 00:14:43,090 omdat je waarschijnlijk hebt gezien die op verschillende punten. 311 00:14:43,090 --> 00:14:45,740 En 500, zou ik gewoon soort van-- zouden we geluk 312 00:14:45,740 --> 00:14:50,380 Als kreeg een 500, omdat we niet weten wat servers zijn momenteel overal neer. 313 00:14:50,380 --> 00:14:53,060 Maar deze codes te doen bestaan, en er is een manier 314 00:14:53,060 --> 00:14:58,610 om ze te openen, zelfs als we dat niet doen ze zien uit de eerste hand op onze systemen. 315 00:14:58,610 --> 00:14:59,530 Ik ben Doug Lloyd. 316 00:14:59,530 --> 00:15:01,570 Dit is CS50. 317 00:15:01,570 --> 00:15:03,557