>> Előadó: Beszéljünk egy másik protocol-- a Hypertext Transfer
Protokoll, illetve a HTTP.
Szóval beszéltünk IP és a TCP korábbi videók.
És ezek protokollok amelyek előírják, hogyan információk
mozog-gépre, és programonként vagy szolgáltatás
a szolgáltatás az interneten keresztül, keresztül ez a hálózat a router és a gépek.
>> De ez általában nem A teljes képet, ugye?
Általában, ha küldünk információ, a program
itself--, amennyiben az adatok kapott, mondjuk, például,
emailben TCP port 25 vagy weboldal kérést porton keresztül 80,
ott általában egy szabályrendszer van feldolgozni azt, amit most kaptam.
És a HTTP egy példa éppen egy ilyen protokollt.
>> HTTP az egyetlen alkalmazási réteg protokoll
hogy fogunk beszélni.
De ez egy másik A szabályok diktálja, hogy hogyan
információt kell továbbítani és feldolgozott az interneten keresztül.
Közelebbről, a HTTP meghatározza, hogy pontosan hogyan
Egy kérelmet kell benyújtania a egy weboldalt, és pontosan hogyan
egy szerver, egy gép hogy a házigazdák weboldalakat,
szállít az információkat vissza az ügyfeleknek.
>> Tehát ez a protokoll nem valójában semmit
köze van, hogy információkat mozog a pont-
pont B. Ez tényleg A szabályrendszer
for-- ez alapvetően szabályai elkötelezettség a munka egy weboldalt,
hasonlóan ahhoz, amikor valaki hullámok a kezét rád,
kéne intett vissza.
Ez egyfajta hagyományos emberi protokollt.
HTTP protokoll csak azt mondja, ha szeretne kérni a web
oldal, győződjön meg róla formátumban néz ki mint this-- fajta, mint a formázás
Egy üzleti levél, például.
És a válasz hasonlóképpen gyere szerint ezt a protokollt.
Vannak más alkalmazási réteg protokollok
hogy mi nem fogunk beszélni a videókat.
De ezek a dolgok, mint A File Transfer Protocol,
Simple Mail Transfer Protocol for e-mail küldése, a Data Distribution
Service, Remote Desktop Jegyzőkönyv RDP, amely
használjuk, ha azt szeretné, hogy távolról hozzáférést A számítógép egy másik számítógépről,
XMPP, amely gyakran néven Jabber vagy chat,
így ez a protokoll A csevegés használatáról szolgáltatásokat.
És sok-sok-sok más.
>> Így minden alkalommal, amit használ egy szolgáltatás, a szolgáltatás
vár információk kell received-- kérés
hogy received-- egy nagyon különleges formátum
és köteles vissza információkat vissza
egy nagyon különleges formában is.
>> Szóval menjünk vissza a illusztráció A velünk akar beszélni az interneten.
Tehát mi vagyunk boldogok, és azt akarjuk, menni cats.com, ugye?
Tehát, ha csak beszélgetünk, hogy cats.com, talán mond valamit, mint a hé,
Lehet látni a honlapon?
És cats.com valószínűleg válaszolni, igen, persze.
Tessék.
Szóval ez egy emberi sorrend A kérdezz-felelek.
>> Mit jelent, hogy néz ki, mint a HTTP?
Nos, ez valójában milyen fordítja elég tisztán, hogy valami ilyesmi.
Azt mondhatjuk, GET / HTTP / 1.1 gazda cats.com.
Tehát alapvetően mit csinálok itt kérve a weboldal www.cats.com/.
Mi általában kihagyja a perjel manapság, de az csak
jelenti cats.com honlapján.
>> Ja, és mellesleg, megyek hogy a HTTP verzió
1.1 kommunikálni veled.
Ez a fajta analóg mondván, mint egyébként,
Megyek beszélni francia, vagy az úton,
Én leszek beszél angolul.
Ez csak a méret a protokoll.
Ez is 1.0, ami Nem általánosan használt többé.
Tehát beszélek HTTP 1.1, és a Szeretném www.cats.com/.
Kérjük, hogy ezt nekem.
>> És akkor ott van egyéb információk, too-- a pont, pont, pont ott,
amely információkat aki van olyan cats.com
tudni fogja, hol elküldeni.
De ez a két egyfajta kritikus részeit
a legelején A HTTP request--
mint amikor elkezd egy írni azt mondod, kedves, üres.
Ez nagyon hasonló szellemben, hogy az.
>> És ha cats.com fog azt mondják, ó, persze, tessék.
Lehet, hogy válaszoljon, mint this-- Én is válaszol.
Azt is beszélik HTTP 1.1.
Az Ön kérelmet jóváhagyják, 200 OK.
Mit fogsz megkapja a HTML majd
dot, pont, pont egy kis plusz információt.
És legalján a kérelmet valójában a HTML,
A jelölőnyelv, a tartalmát cats.com honlapján.
>> Tehát HTTP / 1.1-- Tudomásul veszem meg kérést elfogadta HTTP-n keresztül 1.1.
Ön kérésére hagyták jóvá.
Tudok adni neked, amit akarsz, 200 OK.
Te arról, hogy megkapja a HTML.
És akkor itt van a HTML, amit kért.
>> De néha a kérésünk nem mindig megy elég a terv szerint.
Láthatnám az cats.html oldalon?
Nos, mi van, ha azt mondják, mi nincs cats.html oldal,
amely úgy tűnik, egyfajta irreális mert ők cats.com.
Azt hihetnénk, hogy ők lennének cats.html.
De az OK gombra.
Tehát ez a fajta a hagyományos emberi kapcsolatok
amit most már a cats.com.
Ez hogy lefordítani?
>> Ez lehet valami ismerős.
Kérésünkre nézett pontosan ugyanaz, kivéve ahelyett, hogy perjel
mi most kezd cats.html.
Szóval most mi alapvetően az egész kérés mondás kérek
www.cats.com/cats.html.
Így a fogadó és a középső része, hogy a felső sorban
ott pontosan fel kell tüntetni milyen oldal kérek.
De cats.com ebben az esetben nem fog hogy képes pozitívan reagálni.
Nem tudják, mi beszélünk.
És így ez az, amit lehet, hogy láttam before-- HTTP 1.1 404 Not Found.
Én nem találja, amit Ön kértek.
By the way, fogok adni vissza néhány HTML és általában az, hogy a HTML
a tartalma néhány 404 oldal.
És abban az esetben, cats.com, ez talán
néhány aranyos macska egy kosárban Szomorú 404 arcát melléjük,
mert te lesz szomorú, ha nem kap oldalon
hogy kerestél.
>> Ez a fajta az alapjait, amit a protokollt, a HTTP protokoll kérések
hasonló.
Ők tényleg hasonlít hogyan lenne egy hasonló interakciót
mindössze emberi konvenciók kér valamit
és kapok vissza, vagy írásban a írni és várta a választ
írni egy bizonyos formátumban.
Ez elég sok, amit HTTP csak canonicalizing
az összes eszköz, hogy akarunk érni weboldalak, hipertext transzferek.
>> Tehát egy sor formájában, ezt a módszer kérésére cél HTTP verzió,
nevezzük egy HTTP kérés sorban.
Ez általában az első dolog, ami részeként továbbított HTTP-kérelem
vagy ha kérdezel HTTP.
Ez a fajta, mint, ahogy mondtam, mondván Kedves, üres a tetején a levelet.
Tudják, hogy te írás őket írni.
Tehát ez nagyon hasonlít hogy azt mondja, tudom,
hogy ők így egy HTTP kérés és ez a sajátos formátum
ők kérnek.
>> HTTP verzió valószínűleg Mindig lesz HTTP / 1/1.
1.0 is létezik, de nem igazán használható már.
Céljából CS50, GET valószínűleg mindig
mit fogsz lenni használja, ha te tényleg
így közvetlen HTTP kérések.
De POST egy másik lehetőség, hogy mi vagyunk Nem fog beszélni most.
És akkor request-cél hogy melyik oldal a gazda szerver
szeretne kapni.
Mint mondtam, hogy a fogadó nevét egy külön sorban, általában
A második sor a teljes kérelmet.
És így együtt, a fogadó nevét és a kérelem cél
adjon meg egy konkrét erőforrás keresik.
A mi 404 Például egy második ezelőtt kérdezte ismét www.cats.com,
cats.com hogy a házigazda.
És a kérésem sorban, Azt mondta /cats.html.
Ez volt a kérésem cél.
Tehát összességében kértem a tartalmát, vagy az erőforrás található
A www.cats.com/cats.html.
>> És akkor az alapján, hogy Az erőforrás létezik
és hogy a szerver nem lehet megvalósítani, Az erőforrás alapján az ügyfél
kérés, akkor lehet, hogy Különböző státusz kódok vissza.
Néhány ilyen státusz kódok láttad mert ők része a választ.
Néhányan közülük, 200 OK, vannak Valószínűleg elég csendes.
Ön valószínűleg soha nem láttam Oldal reagálni 200 OK.
Te csak kap az oldalon.
Nem olyan, mint egy 404-es hiba, ami általában elég egyértelmű.
Ön általában látni, hogy azt mondja, 404.
>> Szóval beszéljünk arról, amit néhány e státusz kódok lehetnek.
Ismét, ha a szerver reagál ránk, ők
fognak reagálni HTTP verzió állapotát.
Általában a HTTP / 1.1.
Mik ezek állapotát kódok lesz?
Nos, lehet, hogy a siker.
Tehát a siker kategóriában, mi lehet, hogy kód: 200 A szöveget az OK gombra.
Mit is jelent ez?
Nos, minden jó.
Ön tett egy érvényes kérelmet.
Itt egy érvényes választ.
Azt tudta szállítani pontosan mit akart.
>> Néha lehet, hogy más dolgok hogy nem veszi észre azonnal,
de némileg hibák.
Ők az úgynevezett átirányítás.
Van két közös is van.
301 áthelyezve Permanently-- mi ez a lényegében azt jelenti,
az oldal most egy új helyre.
Ez lesz az ott élő örökké.
És a legtöbb böngésző automatikusan átirányítja Önt.
Így nem igazán látni 301-es, vagy, ha te
egy igazán out-of-date böngésző, esetleg
mert a 301 válasz része A dot, pont, pont a 301 választ.
Azt is megtudhatja, hol az új oldal.
És így a legtöbb böngésző Csak átirányítani oda,
feltételezve, hogy szeretne menni.
>> Néha akkor is kap 302 találat.
És ez valóban Lehet még látni néha.
Néha oldalak mozog átmenetileg.
Szóval ez nem lesz beépítve a kérelem mondja a böngésző
Ha tartósan módosítani bármikor látja a kérést, hogy
hogy a változás, hogy valami mást.
Szóval lehet, hogy lásd 302 Talált, amelyek alapvetően
azt mondja, ez az oldal él valahol máshol.
De ez nem fog ott élnek örökké.
Előbb-utóbb valószínűleg menni vissza, ahol úgy gondolja, hogy ez.
>> Akkor kapsz dolgokat például a kliens hibák.
Tehát ezek azok, amit Nyilván mindenki látott már.
Valószínűleg még nem láttam A 200s vagy 300s,
de akkor valószínűleg ismeri a 400s.
És ez az, amit fogunk beszélni körülbelül egy második, 500S is.
>> Lehet, hogy lásd 401 Jogosulatlan.
Általában ez azt jelenti, te megpróbál hozzáférni egy oldalt,
de nem vagy bejelentkezve.
Szóval megpróbálja menni néhány profil vagy valami a Facebook-on
vagy megpróbálja hozzáférést some-- te a munkát.
Megpróbálod elérni valamit a mű internet,
de te nem vagy bejelentkezve.
Nem lehet látni az oldalon.
Lehet, hogy egy 401 engedély nélküli, ami azt jelenti, valószínűleg
képes lesz kielégíteni ezt a kérést, de először meg kell lépnie erre.
>> Ezzel szemben, akkor lehet, hogy 403 Tiltott, ami nem igazán
számít, ha bejelentkezve, vagy nem.
Ez a kérés nem engedélyezett.
Az erőforrás létezik a kiszolgálón.
De akkor nem szabad hozzáférni.
Ez általában a belső fájlok él a szerver különböző okok miatt
de nem célja, hogy érhető el a külvilágtól,
és így tilos.
Ők ott élnek.
Nem azt mondom, én nem találom.
De mondok én nem adhatok neked.
És ez nem számít, ha Ön bejelentkezett-e vagy sem.
És persze, a nagyon gyakori 404 Not Found.
A fájl nem található meg a szerveren.
Azt szeretnénk kielégíteni Ön kérésének, de nem tehetem.
>> Azt is néha látni szerveren hibák, a leggyakoribb általában
hogy 500 Internal Server Error, amely valójában nem mond semmit
egyáltalán a mi ment rosszul.
De ez valójában nem csinálsz egy hiba a kérését.
Ez valójában a kiszolgáló elromlana hogy teljesítse a kérést valahogy.
Tehát 500 az általános válasz.
>> Azt is látni valamit mint a szolgáltatás nem érhető el,
ami véleményem szerint kód 503.
És Gateway Timeout-- ha Volt valaha egy oldalt csak
üljön ott a be- és rakodási és rakodási
és sosem tudhatod, hogy ez lesz a terheléssel, majd végül csak says--
Csak adja fel.
Ez egy 504 Gateway Timeout.
A szerver akart végrehajtani a kérést,
de valami elromlott a kiszolgálón side--
Nem a side-- hogy okoz, hogy, hogy a probléma.
Most is a végén a történet itt, de amit én valójában most tenni
A fogom nyitni böngészőm, és megmutatom
hogyan lehet látni Néhány ilyen státusz kódok
akkor is, ha általában nem látjuk őket.
És fogunk csinálni, hogy azáltal, hogy egy pillantást néhány fejlesztői eszközöket.
>> Rendben Szóval itt vagyok most már az én böngészőablakban.
És azt akarom, hogy tanulni egy kicsit További információ ezekről a HTTP kérések.
Hogyan tudom-- biztosan tudjuk, hogy ha egy Oldal goes--, ha valami elromlik,
kapunk egy 404.
Mindannyian láttuk, hogy.
Nem kell, hogy bemutassa ezt.
De mi van néhány más is?
És hogyan látjuk E kérelmek akcióban?
>> Tehát az első dolog fogok tennünk, hogy megnyitjuk Fejlesztői eszközök.
Tehát Developer Tools épülnek a legtöbb modern böngésző
és lehetővé teszi számunkra, hogy lássa a dolgokat amit mi nem különben
see-- néhány extra információt a fajta továbbított alatta web
kérelmeket.
Én a Google Chrome itt.
És a nyitott Fejlesztői eszközök Chrome, akkor csak nyomd F-12,
és ez meg fog nyitni fel az oldalán.
Egyszer írja a kérést, én nagyítás így láthatjuk, hogy mi folyik itt.
De mit fogok csinálni a böngészőben bár is-- és én nagyítás alatt here--
Teszek egy kérést www.google.com.
Mindannyian valószínűleg történt ezt a kérést, mielőtt.
Megyek az Enter leütése.
>> Most, itt az én Fejlesztő Szerszámok, én kitaláltam a Hálózat fülre.
És azt veszi észre, egy csomó dolog van.
Nézd meg these-- 200 OK, 200 OK, néhány Ezen állapot kódokat jön.
Nem tudom, hogy miért kapok 302 Talált.
Nem vettem észre, én azt látom, hogy az egyik.
De alapvetően észre, hogy elég sok, tekintve a Google request--
Csináltam egy nagyon egyszerű kérelem Google egyik oldalon.
És a folyamat nyilvánított kérésemet,
A Google úgy tűnik, egy csomó Más kérelmeket a nevemben.
>> De Csináltam egy GET kérelem Google oldal, és kapok egy csomó 200 OKS.
Nem látok 200 OK- én képernyőn, de kapok
egy csomó kéri, hogy a tettek.
Még egy, hogy csinos vagyok arról fog dolgozni
is-- azok számára, akik nagyon old-school,
Ön is tudja, hogy a Facebook volt Nem mindig a Facebook.com.
A korai napokban volt A wwww.thefacebook.com.
Úgy tűnik, nem kap hozzáférést a Facebook.com elég egy darabig.
>> És akkor mi van várok Itt van, hogy információt.
És majd meglátjuk, hogy ez a serpenyők ki.
Mit várok itt az, hogy információkat
hogy a Facebook költözött véglegesen re thefacebook.com a Facebook.com.
Szóval várom valahol tetején a kérésemet
mint az én Developer Tools hogy egy 301 bejelentés
hogy a Facebook költözött véglegesen.
Ismét nem fogom látni 301 a böngészőben képernyőn.
És mivel ez egy 301, ez egy állandó mozgásban.
Saját böngésző, az, hogy Ez egy modern böngésző,
valószínűleg fog átirányítani nekem Facebook.com egyébként.
De lássuk, mi történik.
>> És most megyek megy thefacebook.com.
És igen, ott van rögtön a csúcsra.
Úgy ment el, de nem volt ott.
Hadd lépjünk fel ide.
Itt vagyok a csúcson.
Csináltam egy kérést thefacebook.com, és kapok választ
hogy ez az oldal költözött véglegesen.
És akkor itt 307 Egy belső átirányítás.
És így ez az, amit ténylegesen költözött el a sokkal
ismerős www.facebook.com.
>> Tehát ezek a választ kódok nem mindig történne, akkor is, ha nem látjuk őket.
Én nem fogok illusztrálására 401, 403, 404,
mert akkor már valószínűleg látott azok különböző pontjain.
És 500, én csak lehet természetbeni of-- mi lennék szerencsés
ha van egy 500 mert nem tudjuk, hogy mi szerverek jelenleg le sehova.
De ezek a kódok nem létezik, és van egy módja
eléréséhez, még ha mi nem látni őket első kézből rendszerünkben.
Én Doug Lloyd.
Ez CS50.