>> Ræðumaður: Við skulum tala um annað protocol-- Hypertext Transfer
Siðareglur, eða HTTP.
Þannig að við höfum talað um IP og TCP í fyrri myndböndum.
Og þeir eru siðareglur sem fyrirmæli hvernig upplýsingar
færist frá vél við vélina og frá áætlun um forrit eða þjónustu
að þjónusta í gegnum netið, í gegnum þetta net leið og vélar.
>> En það er yfirleitt ekki allt mynd, ekki satt?
Venjulega þegar við senda upplýsingar, the program
itself-- þegar gögn eru fékk, segja, til dæmis,
í tölvupósti í gegnum TCP höfn 25 eða a Vefsíðan beiðni um höfn 80,
það er yfirleitt kerfi reglna að vinna það sem ég hef bara fengið.
Og HTTP er dæmi af bara svona siðareglur.
>> HTTP er eina umsókn lag siðareglur
sem við erum að fara að tala um.
En það er annað sett reglur kveður hvernig
upplýsingar er að senda og unnin í gegnum internetið.
Einkum, HTTP tilgreinir nákvæmlega hvernig
verður maður að leggja fram beiðni um a vefur blaðsíða og hversu
miðlara, vél sem hýsir vefsíður,
bera þessar upplýsingar baka til viðskiptavina.
>> Þannig að þetta siðareglur ekki í raun hafa neitt
að gera með hvernig upplýsingar færist frá A-lið
til að benda B. Það er í raun kerfið reglur
for-- það er í rauninni reglur þátttöku til að vinna með vefsíðu,
svipað og þegar einhver öldurnar hönd þeirra á þig,
þú ert að ætlast til að sveima.
Það er tegund af a hefðbundin manna siðareglur.
HTTP siðareglur segir bara, ef þú vilt biðja vef
skaltu ganga úr skugga um snið útlit eins this-- konar eins formatting
fyrirtæki bréf, til dæmis.
Og viðbrögð munu álíka koma samkvæmt þessari bókun.
Það eru önnur umsókn lag siðareglur
að við erum ekki að fara að tala um í vídeó.
En þetta eru hlutir eins og File Transfer Protocol,
Simple Mail Transfer Protocol fyrir að senda tölvupóst, er Data Distribution
Þjónusta, Remote Desktop Siðareglur, RDP, sem
er notað ef þú vilt að lítillega aðgangur tölvan frá annar tölva,
XMPP, sem er oft þekktur sem Jabber eða spjall,
svo er þetta siðareglur fyrir að nota spjall þjónustu.
Og það eru margir, margir, margir aðrir.
>> Svo í hvert skipti sem þú ert að nota þjónusta, þjónustan
er von upplýsingar að received-- beiðni
að vera received-- í mjög sérstakur snið
og er nauðsynlegt til að skila upplýsingum til baka
í mjög tilteknu formi eins vel.
>> Svo við skulum fara aftur til skýringar okkar okkur langaði til að tala við internetið.
Þannig að við erum ánægð, og við viljum að fara til cats.com, ekki satt?
Þannig að ef við erum bara að tala við cats.com, við gætum sagt eitthvað eins og hey,
get ég séð heimasíðuna þína?
Og cats.com mun sennilega svara, já, viss.
Gjörðu svo vel.
Svo er það mannlegt konar af spyrja-og-svar.
>> Hvað þýðir það líta út eins og í HTTP?
Jæja, það er í raun eins konar þýðir nokkuð eðlilega að eitthvað eins og this.
Við gætum sagt GET / HTTP / 1.1 frá gestgjafi cats.com.
Svo í rauninni það sem ég er að gera hér er að biðja um vefsíðu www.cats.com/~~pobj.
Við sleppum yfirleitt skástrikið nú á dögum, en það myndi bara
meina heimasíðu cats.com er.
>> Oh, og við the vegur, ég ætla að vera með HTTP útgáfa
1,1 til að hafa samskipti við þig.
Það er tegund af hliðstætt sagði, eins og, við the vegur,
Ég ætla að vera að tala í frönsku, eða af því,
Ég ætla að vera tala á ensku.
Það er bara snið siðareglur.
Það er líka 1.0, sem er ekki algengt lengur.
Þannig að ég er að tala HTTP 1.1, og Mig langar www.cats.com/~~dobj.
Vinsamlega fá það fyrir mig.
>> Og þá er það aðrar upplýsingar, too-- punktur, punktur, punktur þar,
sem eru upplýsingar um sem þú ert svo cats.com
vildi vita hvar á að senda það.
En þetta eru tveir konar mikilvægum hlutum
í upphafi HTTP request--
bara eins og þegar þú byrjar a bréf þú segir, kæri, auður.
Þetta er mjög svipuð í anda við það.
>> Og ef cats.com er að fara að segja, ó, viss, hér þú fara.
Þeir gætu svarað eins this-- Ég er líka að svara.
Ég tala líka HTTP 1.1.
Beiðni þín er samþykkt, 200 lagi.
Það sem þú ert að fara að fá er HTML og þá
punktur, punktur, punktur nokkrar auka upplýsingar.
Og á mjög neðst á beiðni er í raun HTML,
Markup tungumál, Innihald heimasíðuna cats.com er.
>> Svo HTTP / 1.1-- I viðurkenna Beiðnin var samþykkt með HTTP 1.1.
Beiðni þín var samþykkt.
Ég get gefið þér það sem þú vilt, 200 lagi.
Þú ert að fara að fá HTML.
Og þá er hér HTML sem þú baðst um.
>> En stundum beiðnir okkar ekki alltaf að fara alveg samkvæmt áætlun.
Get ég séð cats.html síðuna þína?
Jæja, hvað ef þeir segja, við hafa ekki cats.html síðu,
sem virðist konar óraunhæf því þeir eru cats.com.
Þú vilt held að þeir myndu hafa cats.html.
En OK.
Svo er þessi tegund af hefðbundin mannleg samskipti
við höfum nú haft með cats.com.
Hvernig virkar þessi þýða?
>> Þetta gæti verið eitthvað kunnuglegt við þig.
Beiðni okkar leit nákvæmlega það sama, nema í stað þess að fá rista
við erum nú að fá cats.html.
Svo nú er það í rauninni þetta allt Beiðnin er að segja er vinsamlegast gefa mér
www.cats.com/cats.html.
Svo vélarinnar og miðju hluti af þeirri efstu línu
það benda einmitt hvaða síðu ég er að biðja um.
En cats.com í þessu tilfelli er ekki að fara að vera fær um að bregðast jákvætt.
Þeir vita ekki að við erum að tala um.
Og svo er þetta eitthvað sem þú gætir hafa séð before-- HTTP 1.1 404 Not Found.
Ég gat ekki fundið hvað þú varst að biðja um.
Við the vegur, ég ætla að gefa þér aftur sum HTML, og yfirleitt að HTML
er efni einhverjum 404 bls.
Og um er að ræða cats.com, það er líklega
sumir sætur kettir í körfu með sorglegt 404 andlit við hliðina á þeim,
vegna þess að þú ert að fara að vera sorglegt þegar þú færð ekki síðu
sem þú varst að leita að.
>> Það er góður af the grunnatriði hvað siðareglur, HTTP siðareglur beiðnir
líta út eins og.
Þeir eru mjög svipuð hvernig við myndi gera milliverki á svipaðan hátt
í bara manna ráðstefnur að biðja um eitthvað
og fá það til baka eða skrifa a bréf og von svar
bréf í tilteknu formi.
Það er ansi mikið það HTTP er bara canonicalizing
fyrir öll tæki sem vilja aðgang vefsíður, HyperText flytja.
>> Svo línan í formi, þetta Aðferðin beiðni miða HTTP útgáfa,
er kallað HTTP beiðni línu.
Það er yfirleitt það fyrsta sem er send sem hluta af HTTP beiðni
eða ef þú ert að biðja um HTTP.
Það er tegund af eins og, eins og ég sagði, að segja kæri, auður efst bréf.
Þeir vita að þú ert skrifa þeim bréf.
Svo er þetta mjög svipuð að segja, ég veit
sem þeir eru að gera HTTP beiðni og þetta er tiltekna snið
þeir eru að biðja um.
>> HTTP útgáfa er sennilega alltaf að fara að vera HTTP / 1/1.
1.0 Einnig er til en er ekki í raun notað lengur.
Að því er varðar CS50, GET er sennilega alltaf
hvað þú ert að fara að vera nota þegar þú ert í raun
gera beinar HTTP beiðnir.
En POST er annar valkostur sem við erum ekki að fara að tala um núna.
Og þá er beiðni-miða hvaða síðu á vefþjóninum gestgjafi
þú vildi eins og til að fá.
Eins og ég sagði, að gestgjafi nafn er sérstakt lína, yfirleitt
seinni línan í heild beiðni.
Og svo tekin saman, her nafn og beiðni miða
tilgreina ákveðna úrræði er leitað.
Í 404 dæminu okkar annað síðan ég var að spyrja aftur fyrir www.cats.com,
cats.com vera gestgjafi.
Og í beiðni lína mín, Ég sagði /cats.html.
Það var markmið beiðni mína.
Svo í heild Ég var að biðja fyrir Innihald eða auðlind staðsett
á www.cats.com/cats.html~~pobj.
>> Og þá byggt á því hvort auðlindin sé
og hvort framreiðslumaður geta bera úrræði skv viðskiptavinar
beiðni, þú might fá ýmsir númerin stöðu aftur.
Sum þessara stöðu númerum sem þú hefur séð vegna þess að þeir eru hluti af viðbrögðum.
Sumir þeirra, 200 OK, eru líklega nokkuð hljótt.
Þú hefur sennilega aldrei séð síða svara 200 lagi.
Þú færð bara á síðunni.
Það er ekki eins og 404 villa, sem er yfirleitt nokkuð ljóst.
Þú sérð yfirleitt að það segir 404.
>> Svo skulum við tala um hvað sumir af þeim flokkum númerum gæti verið.
Aftur, þegar þjóninn bregst við okkur, þá eru þeir
að fara að bregðast HTTP útgáfa stöðu.
Venjulega HTTP / 1.1.
Hvað eru þessir stöðukóða fara að vera?
Jæja, kannski fáum við árangur.
Svo í velgengni flokki, við gæti fengið kóðann 200 með texta lagi.
Hvað þýðir þetta?
Jæja, allt er gott.
Þú löglega beiðni.
Hér er gild svar.
ÉG var fær til að skila nákvæmlega það sem þú vildir.
>> Stundum þú might fá annað að þú munt ekki taka strax
en eru nokkuð mistök.
Þeir eru kallaðir redirections.
Það eru tveir algengustu sjálfur hér.
301 Færðar Permanently-- hvað þetta þýðir í rauninni
er á síðunni er nú á nýjum stað.
Það mun búa þar að eilífu.
Og flestir vafrar sjálfkrafa sent þig.
Svo þú munt aldrei raunverulega sjá 301, heldur, nema þú sért
með raunverulega út-af-dagsetningu Vafrinn hugsanlega
vegna þess að 301 svörun er hluti af punkturinn, punktur, punktur af 301 svörun.
Hún segir einnig þar sem ný síða er.
Og svo flestir vafrar bara sent þig þar,
að því gefnu að þú vilt fara þangað.
>> Stundum þú munt einnig fá 302 Found.
Og þetta sem þú í raun og veru gæti samt sjá stundum.
Stundum síður fært sig tímabundið.
Svo það er ekki að fara til að byggja inn beiðnin segja vafrann
varanlega breyta hvenær það sér fram á að þú
gera til að breyta því í eitthvað annað.
Svo þú gætir séð 302 Finna, sem í grundvallaratriðum
segir þessa síðu býr annars staðar.
En það er ekki að fara að búa þar að eilífu.
Það mun á endanum líklega fara aftur þar sem þú heldur það er.
>> Þá munt þú fá hlutina eins viðskiptavinar villur.
Svo þetta eru þær sem þú hefur líklega séð, nú.
Þú sennilega ekki hafa séð en 200s eða í 300s,
en þú ert líklega kannast við 400s.
Og það er það sem við munum tala um í annað, 500s eins og heilbrigður.
>> Þú gætir séð 401 Ósamþykkt.
Venjulega þýðir þetta að þú ert reyna að fá aðgang að síðunni,
en þú hefur ekki skráð þig inn.
Svo þú reynir og fara sumir uppsetningu eða eitthvað á Facebook
eða þú reynir og aðgangur some-- þú ert í vinnunni.
Þú ert að reyna að opna eitthvað á internetinu vinnu þína er,
en þú ert ekki skráður inn.
Þú getur ekki séð síðuna.
Þú gæti fengið 401 óviðkomandi, sem þýðir að við líklega
verður fær um að uppfylla þessa beiðni, en fyrst þú þarft að skrá þig inn til að gera það.
>> Hins, þú might fá 403 Bannað, sem er það skiptir ekki
máli ef þú ert skráður inn eða ekki.
Þessi beiðni er ekki leyft.
The úrræði er til á þjóninum.
En þú hefur ekki leyfi til að opna það.
Þetta er yfirleitt innri skrár sem lifa á þjóninum fyrir ýmsum ástæðum
en er ekki ætlað að vera nálgast frá umheiminum,
og svo þeir eru bannaðar.
Þeir búa þar.
Ég er ekki að segja að ég get ekki fundið það.
En ég er að segja að ég get ekki gefið þér það.
Og það skiptir ekki máli ef þú ert skráður inn eða ekki.
Og þá auðvitað, mjög algengar 404 Not Found.
Skráin er ekki til á þjóninum.
Mig langar til að fullnægja beiðni þinni, en ég get það ekki.
>> Þú líka stundum sjá miðlara villur, algengasta almennt
vera 500 Innri Framreiðslumaður Villa, sem ekki í raun að segja þér eitthvað
yfirleitt um það sem hefur farið úrskeiðis.
En það er í raun ekki að gera mistök í beiðni þinni.
Það er í raun miðlara galli að bera á beiðni einhvern veginn.
Svo er 500 almenn viðbrögð.
>> Þú munt einnig sjá eitthvað eins Þjónusta ekki tiltæk,
sem ég tel er númer 503.
Og Gateway Timeout-- ef þú einhverntíma síðu bara
sitja þar hleðsla og hleðsla og hleðsla
og þú veist aldrei hvort það er að fara að hlaða og þá loksins það says-- bara
bara gefur upp.
Það er 504 Gateway Tími.
Miðlarinn vildi framkvæma beiðni þína,
en eitthvað fór úrskeiðis á miðlara side--
ekki á side-- þinni til valdið því að vera vandamál.
Nú gætum við enda söguna hér, en það sem ég er reyndar að fara að gera núna
er ég að fara að opna vafrinn minn og sýna þér
hvernig þú might vera fær til að sjá sumir af þessum flokkum númerum
jafnvel ef þú ert ekki almennt séð þær.
Og við erum að fara að gera það með því að taka a líta á sumir verktaki verkfæri.
>> Allt í lagi Svo hér er ég nú í vafranum mínum.
Og ég vil læra svolítið meira um þessar HTTP beiðnir.
Hvernig get ég know-- vissulega við vitum ef síðu goes-- þegar eitthvað fer úrskeiðis,
við fáum 404.
Við höfum öll séð það.
Við þurfum ekki að sýna það.
En hvað eru nokkrar aðrar þær?
Og hvernig væri við sjáum Þessar beiðnir í aðgerð?
>> Svo fyrsta sem ég ætla að gera er að opna upp Developer Tools.
Svo Tól hönnuða eru byggð í flestum nútíma vöfrum
og leyfa okkur að sjá hlutina að við gerum ekki annað
see-- nokkrar auka upplýsingar konar verið er að senda undir vefnum okkar
beiðnir.
Ég er að nota Google Chrome hér.
Og til að opna Developer Tools í Króm, þú högg bara F-12,
og það er að fara að opna það upp á hlið.
Þegar ég sláðu inn beiðnina, ég stækka svo við getum séð hvað er að gerast hér.
En það sem ég ætla að gera í vafranum mínum bar is-- og ég stækka yfir here--
Ég mun leggja fram beiðni til www.google.com.
Við höfum öll líklega gert þessi beiðni áður.
Ég ætla að ýta á Enter.
>> Nú, hérna í Developer mínu Verkfæri, ég hef valið flipann Network.
Og þú tekur a einhver fjöldi af hlutur hér.
Horfðu á these-- 200 lagi, 200 lagi, sumir þessara stöðu númerum koma upp.
Ég veit ekki af hverju ég fæ 302 Fann.
Ég vissi ekki að ég myndi sjá að einn.
En í grundvallaratriðum eftir því að nokkuð mikið, í skilmálar af Google request-- mínum
Ég gerði mjög einfalt Beiðni um síðuna Google.
Og í því ferli skila beiðni mína,
Google hefur greinilega gert mikið af öðrum beiðnum um mína þágu.
>> En ég hef gert fá beiðni um Google síðu og ég er að fá fullt af 200 Oks.
Ég er ekki að sjá 200 OK á minn skjár, en ég fæ
a einhver fjöldi af beiðnum sem hafa verið gerðar.
Eitt enn sem ég er nokkuð víst er að fara að vinna
is-- fyrir þá sem eru í raun gamall-skóli,
þér vitið, að Facebook var ekki alltaf á Facebook.com.
Í árdaga þess að það var á wwww.thefacebook.com.
Þeir greinilega gat ekki fengið aðgang að Facebook.com fyrir alveg hríð.
>> Og svo það sem ég er að búast hér er að fá upplýsingar.
Og við munum sjá hvort þetta pönnur út.
Hvað ég er að búast hér er að fá upplýsingar
sem Facebook hefur flutt varanlega frá thefacebook.com til Facebook.com.
Þannig að ég ætla að búast einhvers staðar ofarlega á beiðnum mínum
yfir í Developer Tools mínum að fá 301 tilkynningu
sem Facebook hefur flutt til frambúðar.
Aftur, mun ég ekki sjá 301 í vafranum skjánum mínum.
Og vegna þess að það er a 301, það er föst færa.
Vafrinn minn, að vera að það er nútíma vafra,
er líklega að fara að beina ég Facebook.com samt.
En við skulum sjá hvað gerist.
>> Og nú ætla ég að fara til thefacebook.com.
Og Já, það er rétt fyrir ofan.
Það gekk í burtu, en það var þar.
Leyfðu mér að fletta upp hér.
Hérna efst.
Ég gerði beiðni til thefacebook.com, og ég er að fá svar
að þessi síða hefur flutt til frambúðar.
Og þá 307 hér er innri endurvísa.
Og svo er þetta það sem hefur í raun flutti mig til miklu meira
þekki www.facebook.com.
>> Svo þessar svar númer gera enn gerast, jafnvel þótt við sjáum ekki þau.
Ég ætla ekki að sýna 401, 403, 404,
vegna þess að þú hefur sennilega séð þá á ýmsum stöðum.
Og 500, myndi ég bara vera góður of-- við myndum fá heppinn
ef fékk 500 vegna þess að við vitum ekki hvað netþjónum eru nú niður hvar sem er.
En þessar reglur gera til, og það er leið
að fá aðgang að þeim, jafnvel ef við gerum ekki sjá þá milliliðalaus á kerfum okkar.
Ég er Doug Lloyd.
Þetta er CS50.