Oratè: Se pou nou pale sou yon lòt Pwotokòl Transfè nan Ipèrtèks Pwotokòl, oswa HTTP. Se konsa, nou te pale osijè de IP ak tchp nan videyo anvan yo. Ak sa yo se pwotokòl ki dikte ki jan enfòmasyon mouvman soti nan machin nan machin ak nan pwogram nan pwogram oswa sèvis nan sèvis sou Entènèt la, atravè rezo sa a nan routeurs ak machin. Men, sa a anjeneral pa foto a tout antye, dwa? Anjeneral lè nou voye enfòmasyon, pwogram lan itself-- lè done se resevwa, di, pou egzanp, nan imel via tchp pò 25 oswa yon entènèt demann paj via pò 80, gen nan anjeneral yon sistèm nan règ gen nan pwosesis sa m 'te jis te resevwa. Apre sa, HTTP se yon egzanp a jis tankou yon pwotokòl. HTTP se sèlman nan pwotokòl kouch aplikasyon ke nou ap ale nan pale sou. Men, li se yon lòt seri nan règ dikte ki jan enfòmasyon se yo dwe transmèt ak trete atravè entènèt la. An patikilye, HTTP presize egzakteman ki jan youn dwe fè yon demand pou yon paj entènèt ak egzakteman ki jan yon sèvè, yon machin ki gen tout pouvwa paj wèb, delivre enfòmasyon ki do nan kliyan. Se konsa, sa a pa fè sa pwotokòl aktyèlman gen anyen fè ak ki jan enfòmasyon mouvman soti nan pwen A ak pwen B. Li nan reyèlman sistèm nan nan règleman pou- li nan fondamantalman règleman yo nan angajman pou travay ak yon paj entènèt, menm jan ak lè yon moun vag men yo nan ou, w ap sipoze balanse tounen. Sa a sòt de yon konvansyonèl pwotokòl imen. Pwotokòl HTTP jis di, si ou vle pou mande pou yon sit entènèt paj, asire w ke sanble fòma ou tankou sa a men sòt de tankou fòma yon lèt biznis, pou egzanp. Ak repons a pral menm vini dapre pwotokòl sa a. Gen lòt pwotokòl kouch aplikasyon ke nou pa ap ale nan pale sou nan videyo. Men, sa yo gen ladan bagay sa yo tankou Pwotokòl la File Transfè, Senp Pwotokòl Transfè Mail pou voye Imèl, Distribisyon nan Done Sèvis, Remote Desktop Pwotokòl, RDP, ki se itilize si ou vle aksè adistans òdinatè w lan soti nan yon lòt òdinatè, XMPP, ki se souvan li te ye tankou Jabber oswa Chat, kidonk sa a se pwotokòl la pou lè l sèvi avèk sèvis chat. E genyen anpil anpil moun, anpil moun, anpil lòt moun. Se konsa, chak fwa w ap itilize yon sèvis, sèvis pou la ap tann enfòmasyon yo dwe received-- yon demann yo dwe received-- nan yon trè fòma patikilye epi li se oblije retounen enfòmasyon tounen nan yon fòma trè patikilye kòm byen. Se konsa nou tounen nan egzanp nou an nan nou vle pou pale ak entènèt la. Se konsa, nou ap kontan, e nou vle pou yo ale nan cats.com, dwa? Se konsa, si nou ap jis ap pale ak cats.com, nou ta ka di yon bagay tankou hey, mwen ka gade nan paj lakay ou? Apre sa, cats.com pwal pwobableman reponn, yeah, asire w. La a ou ale. Se konsa, sa a, se yon sòt imen a mande-ak-repons. Ki sa ki sanble nan HTTP? Oke, li aktyèlman kalite tradui bèl propr nan yon bagay tankou sa a. Nou ta ka di JWENN / HTTP / 1.1 soti nan cats.com lame. Se konsa, fondamantalman sa m ap fè isit la se mande pou paj entènèt www.cats.com/ la. Anjeneral nou oblije koupe nan sèjousi, men sa ta jis vle di paj dakèy cats.com la. Oh, ak nan chemen an, mwen pral yo dwe lè l sèvi avèk vèsyon HTTP 1.1 yo kominike avèk ou. Sa a sòt de analoji nan li di, tankou, nan chemen an, Mwen pral yo dwe pale an franse, oswa nan chemen an, Mwen pral yo dwe pale nan lang angle. Se jis fòma a nan pwotokòl la. Li la tou 1.0, ki se pa souvan itilize ankò. Se konsa, mwen pale HTTP 1.1, ak Mwen ta renmen www.cats.com/. Tanpri jwenn ki pou mwen. Lè sa a, gen nan lòt enfòmasyon, too-- dot, dot la, dot la, ki se enfòmasyon sou ki moun ou yo, se pou cats.com ta konnen ki kote yo voye li. Men, sa yo, se de la sòt de pati kritik nan konmansman an anpil nan yon HTTP request-- jis tankou lè ou kòmanse yon lèt ou di, mwen renmen anpil, vid. Sa a se trè menm jan an nan lespri nan sa. Men, si ki pral cats.com di, oh, asire w, isit la ou ale. Yo ta ka reponn tankou sa a men mwen tou reponn. Mwen menm mwen te pale HTTP 1.1. Se Demann ou apwouve, 200 OK. Ki sa w ap sou yo resevwa se HTML ak Lè sa a dot, dot, dot kèk enfòmasyon siplemantè. Apre sa, nan pati anba a anpil nan la demann se aktyèlman HTML a, lang nan baliz, nan kontni nan paj dakèy cats.com la. Se konsa, HTTP / 1.1-- Mwen rekonèt ou te aksepte demann via HTTP 1.1. Te Demann ou apwouve. Mwen ka ba ou sa ou vle, 200 OK. Ou se sou yo resevwa HTML. Lè sa a, isit la nan la HTML ke ou mande a. Men pafwa demann nou an pa fè sa toujou ale byen selon plan. Èske mwen ka gade nan paj cats.html ou a? Oke, sa si yo di, nou pa gen yon paj cats.html, ki sanble kalite ireyèl paske yo ap cats.com. Ou ta panse ke yo ta gen cats.html. Men, OK. Se konsa, sa a se sòt de la entèraksyon imen konvansyonèl nou te kounye a te gen avè cats.com. Ki jan ki tradui? Sa a ta kapab yon bagay abitye nan ou. Demann nou gade ekzakteman menm bagay la, eksepte olye pou yo ap resevwa koupe nou ap kounye a ap resevwa cats.html. Se konsa, kounye sa fondamantalman tout sa a demann ap di se tanpri ban m ' www.cats.com/cats.html. Se konsa, lame a ak mitan an yon pati nan ki liy tèt gen endike jisteman sa paj mwen mande pou. Men, nan ka sa a cats.com pa pral pou kapab reponn pozitivman. Yo pa konnen n ap pale. Se konsa, sa a se yon bagay ou ta ka genyen wè HTTP 'devan 1.1 404 pa jwenn. Mwen pa te kapab jwenn sa ou te mande pou. By wout la, mwen pral ba ou tounen kèk HTML, epi anjeneral ki HTML se kontni an nan kèk paj 404. Ak nan ka a nan cats.com, li la pwobableman kèk chat bèl nan yon panyen ak yon tris 404 figi kote yo a, paske w ap ale nan gen tris lè ou pa jwenn paj ke ou te kap chèche. Sa a kalite Basics yo nan ki sa yon pwotokòl, demann yo HTTP pwotokòl sanble. Yo ap reyèlman menm jan ak ki jan nou ta fè yon entèraksyon ki sanble nan konvansyon imen jis mande pou yon bagay ak ap resevwa l 'tounen oswa ekri yon lèt ak tann yon repons lèt nan yon fòma an patikilye. Sa a bèl anpil ki sa HTTP se jis canonicalizing pou tout aparèy ki ta vle aksè paj wèb, transfè ipèrtèks. Se konsa, yon liy nan fòm nan, nan sa a metòd demann HTTP sib vèsyon, yo rele sa yon liy demann HTTP. Li nan anjeneral premye bagay la ki se transmèt kòm yon pati nan yon demann HTTP oswa si w ap mande pou HTTP. Li nan sòt de renmen, jan mwen te di, li di mwen renmen anpil, vid nan tèt la lèt ou yo. Yo konnen ke w ap ekri yo yon lèt. Se konsa, sa se trè menm jan di, mwen konnen yo ke yo ap fè yon demann HTTP ak sa a se fòma a patikilye yo ap mande pou. Vèsyon HTTP se pwobableman toujou pral fè HTTP / 1/1. 1.0 tou ki egziste men se pa reyèlman itilize ankò. Pou rezon nan CS50, Jwenn se pwobableman toujou ki sa w ap pral fè lè l sèvi avèk lè w ap aktyèlman fè demann HTTP dirèk. Men, POST se yon lòt opsyon ke nou ap pa ale nan pale sou kounye a. Lè sa a, demann-sib se sa paj sou sèvè lame a ou ta renmen jwenn. Kòm mwen te di, non ki lame se yon liy ki apa a, anjeneral liy nan dezyèm nan demann lan an jeneral. Se konsa, pran ansanm, lame a non ak sib la demann presize yon espesifik resous ke yo te t'ap chache. Nan egzanp nou an 404 yon dezyèm de sa, mwen te mande ankò pou www.cats.com, cats.com yo te lame a. Ak nan liy demann mwen, M 'te di /cats.html. Sa ki te sib demann mwen. Se konsa, an jeneral mwen te mande pou nan sa oswa resous an ki sitiye a www.cats.com/cats.html. Lè sa a, ki baze sou si wi ou non resous la egziste epi si sèvè a ka delivre resous la dapre a nan kliyan demann, ou ta ka jwenn divès kalite kòd leta tounen. Gen kèk nan sa yo kòd leta ou te wè paske yo ap yon pati nan repons lan. Kèk nan yo, 200 OK, se pwobableman bèl silans. Ou te pwobableman pa janm wè yon paj reponn 200 OK. Ou jis jwenn paj la. Li pa tankou yon erè 404, ki se nòmalman trè klè. Anjeneral ou wè ke li di 404. Se konsa, kite pou nou pale sou sa ki gen kèk nan tout sa yo kòd leta ta kapab. Yon fwa ankò, lè sèvè a reponn a nou, yo ap ale nan reponn HTTP estati vèsyon. Anjeneral HTTP / 1.1. Ki sa ki kòd sa yo estati pral fè? Bon, nou ta ka jwenn yon siksè. Se konsa, nan kategori a siksè, nou ta ka jwenn Kòd 200 ak OK nan tèks. Ki sa sa vle di? Oke, tout bagay se yon bon bagay. Ou te fè yon demann ki valid. Isit la nan yon repons valab. Mwen te kapab delivre ekzakteman ki sa ou te vle. Pafwa ou ta ka jwenn lòt bagay ke ou pa ap remake touswit men se yon ti jan echèk. Yo ap rele rdirèksyon. Genyen de moun komen isit la. 301 Deplase Permanently-- ki sa sa a fondamantalman vle di se paj la se kounye a nan yon nouvo kote. Li pral viv la pou tout tan. Ak sa ki pi navigatè pral otomatikman redireksyon ou. Se konsa, ou pa janm pral reyèlman wè yon 301, swa, sof si w ap lè l sèvi avèk yon vrèman soti-of-dat navigatè, petèt, paske repons lan se yon pati nan 301 dot la, dot, dot nan repons lan 301. Li te tou di ou ki kote paj la nouvo se. Se konsa, pi navigatè pral jis redireksyon ou a, an konsideran ke ou vle ale a. Pafwa ou pral jwenn tou 302 te jwenn. Apre sa, yon sèl sa a ou aktyèlman ta ka toujou wè detanzantan. Pafwa paj deplase pou yon ti tan. Se konsa, li pa k ap pase yo dwe bati nan demann lan di navigatè a pou tout tan chanje nenpòt ki lè li wè demann lan ke ou fè nan chanje li nan yon lòt bagay. Se konsa, ou ta ka wè 302 Twouve, ki fondamantalman di sa a ap viv yon kote paj lòt bagay. Men, li pa k ap pase yo viv la pou tout tan. Li pral evantyèlman pwobableman ale tounen nan kote ou panse li ye. Lè sa a, ou pral jwenn bagay sa yo tankou erè kliyan. Se konsa, sa yo, se yo menm ou te pwobableman wè, kounye a. Ou pwobableman pa gen pou wè 200s yo oswa 300s yo, men ou ap pwobableman abitye avèk 400S yo. Epi sa a, ki sa nou pral pale sou nan yon dezyèm fwa, 500s kòm byen. Ou ta ka wè 401 san otorizasyon. Anjeneral sa a vle di ou se ap eseye gen aksè a yon paj, men ou pa t 'louvri sesyon an. Se konsa, ou eseye epi ale nan kèk pwofil oswa yon bagay sou Facebook oswa ou eseye ak aksè some-- w ap nan travay ou. W ap eseye jwenn aksè nan yon bagay sou entènèt travay ou a, men ou pa ap louvri sesyon an. Ou pa ka gade nan paj la. Ou ta ka jwenn yon 401 san otorizasyon, ki vle di nou pwobableman yo pral kapab satisfè demann sa a, men premye ou bezwen ouvri sesyon an yo fè sa. Kontrèman, ou ta ka jwenn 403 Entèdi, ki se li fè sa pa reyèlman gen pwoblèm si w ap louvri sesyon an oswa ou pa. Demann sa a pa pèmèt. Resous la egziste sou sèvè a. Men, ou pa gen dwa gen aksè a li. Sa a se dosye anjeneral entèn ki ap viv sou sèvè a pou plizyè rezon men se pa yo gen entansyon yo dwe rantre nan mond lan deyò, ak pou yo ap entèdi. Yo viv la. Mwen pa di mwen pa ka jwenn li ankò. Men, m ap di mwen pa ka ba ou li. E li pa gen pwoblèm si w ap louvri sesyon an oswa ou pa. Lè sa a, nan kou, nan trè komen 404 pa jwenn. Dosye a pa egziste sou sèvè a. Mwen ta renmen satisfè demann ou, men mwen pa kapab. Ou menm tou pafwa wè sèvè erè, ki pi komen an jeneralman ke yo te 500 Entèn Erè sèvè, ki pa aktyèlman di ou anyen nan tout sou sa ki te ale mal. Men, li la pa aktyèlman fè ou yon erè nan demann ou an. Li nan aktyèlman sèvè a li pap resevwa rive delivre sou demann lan yon jan kanmenm. Se konsa, 500 se repons la an jeneral. Ou ap tou wè yon bagay tankou Lapòs disponib, ki mwen kwè se kòd 503. Apre sa, Gateway Timeout-- si w te janm te gen yon paj jis chita gen ak loading loading ak loading epi ou pa janm konnen si li k ap pase yo chay ak Lè sa a evantyèlman li jis says-- jis bay moute. Sa se yon Gateway Poz 504. Sèvè a te vle egzekite demann ou an, men yon bagay ale mal sou side-- nan sèvè pa sou side-- ou a lakòz ke yo dwe yon pwoblèm. Koulye a, nou te kapab fini istwa a isit la, men sa m ap aktyèlman ale nan fè kounye a se mwen pral louvri moute navigatè m 'ak montre w ki jan ou ka kapab wè kèk nan kòd leta sa yo menm si ou pa jeneralman wè yo. Epi nou ap ale nan fè sa lè yo pran yon gade nan kèk zouti pwomotè. Tout dwa Se konsa, isit la mwen menm kounye a nan fenèt navigatè m 'yo. Apre sa, mwen vle aprann yon ti jan plis sou sa yo demann HTTP. Kouman pou mwen know-- sètènman nou konnen si yon paj goes-- lè yon bagay ale mal, nou jwenn yon 404. Nou tout wè sa. Nou pa bezwen montre sa. Men, sa ki yo se kèk lòt moun? Ak ki jan ta nou wè demann sa yo nan aksyon? Se konsa, premye bagay mwen pral fè se louvri moute Developer Zouti. Se konsa, Developer Zouti yo bati nan pi navigatè modèn ak pèmèt nou wè bagay ke nou pa fè sa otreman see-- kèk enfòmasyon siplemantè nan sòt ke yo te transmèt anba wèb nou an demann. Mwen lè l sèvi avèk Google Chrome isit la. Apre sa, yo louvri Developer Zouti nan Chrome, ou jis frape F-12, epi li k ap pase yo louvri l 'kanpe sou bò la. Yon fwa mwen tape demann lan, mwen pral rale nan pou nou ka wè sa ki k ap pase sou isit la. Men, sa ki mwen pral fè nan navigatè m ' bar is-- epi mwen pral rale nan plis pase isit lan-- M'ap fè yon demann yo voye www.google.com. Nou tout pwobableman te fè demann sa a anvan. Mwen pral frape Antre nan. Koulye a, plis pase isit la nan Developer mwen Zouti, mwen te chwazi tab la Network. Epi ou remake yon bann bagay sa yo isit la. Gade nan these-- 200 OK, OK 200, gen kèk kòd sa yo estati a vini. Mwen pa konnen poukisa mwen ap resevwa 302 Twouve. Mwen pa t 'konnen mwen ta wè ke yon sèl. Men, fondamantalman remake ke bèl anpil, an tèm de request-- Google mwen Mwen te fè yon trè senp demann pou paj Google la. Ak nan pwosesis la nan fournir demann mwen, Google te aparamman te fè yon anpil nan lòt demann sou non mwen. Men, mwen te fè yon demann jwenn pou Google la paj ak Mwen ap resevwa yon anpil nan 200 OKs. Mwen pa wè 200 OK sou ekran m ', men mwen ap resevwa yon anpil nan demann ki te fè fè yo. Youn nan pi plis ke mwen se trè w se ale nan travay is-- pou moun nan nou ki yo se reyèlman fin vye granmoun-lekòl, ou ka konnen ke Facebook te pa toujou nan Facebook.com. Nan jou byen bonè li yo li te a wwww.thefacebook.com. Yo aparamman pa t 'kapab jwenn aksè Facebook.com pou byen yon ti moman. Se konsa, sa m ap tann isit la se yo ka resevwa enfòmasyon. Epitou, n ap wè si sa a chodyè deyò. Sa mwen ap tann isit la se yo ka resevwa enfòmasyon ki Facebook te deplase pou tout tan soti nan thefacebook.com Facebook.com. Se konsa, mwen tann yon kote tou pre anwo a nan demann mwen sou nan Developer Zouti mwen yo ka resevwa yon notifikasyon 301 ki Facebook te deplase nèt. Yon fwa ankò, mwen pa pral wè 301 sou ekran navigatè m 'yo. Epi paske li nan yon 301, li nan yon mouvman pèmanan. Navigatè m 'yo, ke yo te ke li nan yon navigatè modèn, se pwobableman ale nan redireksyon m 'Facebook.com de tout fason. Men, kite a wè sa ki rive. Epi, koulye a mwen pral ale nan thefacebook.com. Epi YEP, gen li se dwa nan tèt la. Li al fè wout yo, men li te la. Kite m 'woulo liv moute isit la. Dwa isit la nan tèt la. Mwen te fè yon demann yo voye thefacebook.com, ak mwen ap resevwa yon repons ki te paj sa a demenaje ale rete nèt. Lè sa a, isit la se 307 yon redireksyon entèn yo. Se konsa, sa a se sa gen aktyèlman deplase m 'nan pi plis nan abitye www.facebook.com. Se konsa, kòd sa yo fè toujou repons rive, menm si nou pa wè yo. Mwen pa ale nan ilistre 401, 403, 404, paske ou te pwobableman wè moun ki nan divès kalite pwen. Ak 500, mwen ta jis pou kalite de- nou ta jwenn chans si te resevwa yon 500 paske nou pa konnen ki sa serveurs se kounye a desann nenpòt kote. Men, kòd sa yo fè egziste, epi gen se yon fason jwenn aksè nan yo menm si nou pa fè sa wè yo grenn je sou sistèm nou an. Mwen se Doug Lloyd. Sa a se CS50.