KONUŞMACI: en başka hakkında konuşalım Köprü Transferi protocol-- Protokol, veya HTTP. Bu yüzden IP konuştuk ve daha önceki videolarda TCP. Ve bu protokoller nasıl bilgi dikte olduğunu makineden makineye taşınır ve programdan programa veya hizmetten aracılığıyla, internet üzerinden hizmet yönlendiriciler ve makinelerin bu ağı. Ama bu genellikle değil Sağ Resmin tamamını? Genellikle biz göndermek Bilgi, program itself-- veri Örneğin diyelim ki, alınan TCP bağlantı noktası 25 veya üzeri e-postaya port 80 üzerinden web sayfası isteği, Orada kurallar sistemi genellikle var Ben sadece aldığım şey işlemek için. Ve HTTP bir örnektir sadece böyle bir protokol. HTTP sadece uygulama katmanı protokolü biz hakkında konuşmak için gidiyoruz. Ama başka bir set nasıl dikte kurallar Bilgi iletilecek ve internet üzerinden işlenen. Özellikle, HTTP tam olarak nasıl belirler biri için bir istek yapmalısınız Bir web sayfası ve tam olarak nasıl Bir sunucu, bir makine Bu, web sayfalarını barındıran Bu bilgi sunar müşterilerine geri. Yani bu protokol yok aslında bir şey var nasıl bilgi ile ilgisi A noktasından hareket nokta B. Gerçekten var kurallar sistemin for-- temelde kuralları var Bir web sayfası ile çalışmak için nişan, ne zaman birine benzer size dalgalar ellerini, Geri dalga zannediyorsunuz. Bu bir tür var Geleneksel insan protokol. HTTP protokolü sadece eğer diyor Eğer bir web istemeyi sayfa, emin biçim görünüyor yapmak gibi biçimlendirme paha tür gibi Örneğin bir iş mektubu. Ve cevap benzer olacak Bu protokole göre geliyor. Diğer vardır uygulama katmanı protokolleri biz gitmiyorsun videoları hakkında konuşmak. Ancak bu gibi şeyleri içerir Dosya Aktarım Protokolü, Basit Posta Aktarım Protokolü e-posta göndermek, Veri Dağıtım Servis, Uzak Masaüstü Protokol, RDP, hangi uzaktan erişim istiyorsanız kullanılır başka bir bilgisayardan bilgisayar, Sıklıkla XMPP, Jabber veya sohbet olarak bilinen bu nedenle bu protokol Sohbet servislerini kullanmak için. Ve çok, çok, pek çok diğerleri vardır. Kullandığınız Yani her zaman Bir servis, hizmet bilgi bekliyor bir istek received-- edilmesi Bir in received-- olduğu Çok özel biçimi ve gerekli olan geri iade bilgileri çok özel bir biçimde de. Yani bizim resme geri dönelim Bize internete konuşmak isteyen. Bu yüzden mutluyuz ve biz istiyoruz Doğru, cats.com gitmek için? Yani biz sadece cats.com konuştuğunuz takdirde, Biz hey gibi bir şey diyebilirsiniz Ben ana sayfanızı görebilir? Ve cats.com muhtemelen olacaktır Evet, tabii yanıt verir. Hadi bakalım. Yani bir insan bir tür var sormak-cevap. Bu HTTP neye benziyor? Şey, aslında bir tür çevirir Oldukça temiz böyle bir şey için. Biz GET / HTTP / 1.1 diyebilirsiniz ev sahibi cats.com dan. Yani temelde ne ben burada yapıyorum olduğunu web sayfası www.cats.com/~~pobj için soruyorum. Biz genellikle slash atlarsanız Bugünlerde, ama bu olur sadece cats.com Web Sitesini anlamına gelir. Oh, ve bu arada, ben gidiyorum HTTP sürümünü kullanıyor olmak 1.1 sizinle iletişim kurmak için. Bu tür benzer için var Bu arada, gibi, diyerek, Ben konuşma gidiyorum Fransızca, ya da arada, Ben İngilizce konuşan olacağım. Bu protokol sadece biçimi değil. Bu olduğu, aynı zamanda 1,0 var: Yaygın artık kullanılmamaktadır. Yani HTTP 1.1 konuşma ve kulüpler Ben www.cats.com/~~dobj istiyorum. Benim için olsun lütfen. Ve sonra diğer bilgiler, var Nokta, nokta too--, orada nokta Hangi bilgilerin hakkında Bunu kim cats.com nereye göndermek bilemez. Ancak bu ikisi kritik parçaların tür başında bir HTTP request-- Sadece bir başlattığınızda gibi Söylediğin mektup, canım, boş. Bu o kadar ruhuna çok benzer. Ve cats.com gidiyor eğer oh, tabii, burada sen gitmek söylüyorlar. Onlar gibi cevap olabilir bu-- Ben de cevap ediyorum. Ben de HTTP 1.1 konuşuyoruz. Talebiniz, 200 OK onaylanmıştır. Ne üzeresin almak, sonra HTML ve bir nokta, nokta, bazı ekstra bilgi nokta. Ve çok altında istek aslında HTML, işaretleme dili, cats.com Web Sitesini içeriği. Yani HTTP / 1.1-- Ben sizin yanınızdaki kabul istek HTTP 1.1 üzerinden kabul edildi. Sizin talebiniz kabul edildi. Ben, ne istediğinizi 200 OK sana verebilirim. HTML almak üzereyiz. Ve sonra burada İstediğiniz HTML. Ama bazen bizim istekleri yok her zaman oldukça planına göre gidin. Ben senin cats.html sayfasını görebilir miyim? Eh, biz ne söylersek Bir cats.html sayfası yok hangi tür gerçek dışı görünüyor Onlar cats.com çünkü. Onlar cats.html olurdu düşünmek istiyorum. Ama tamam. Yani bu tür bir Geleneksel insan etkileşimi Şimdi cats.com ile yaşadım. Nasıl tercüme mu? Bu size tanıdık bir şey olabilir. İsteğimiz, tam olarak aynı görünüyordu yerine alma eğik çizgi hariç Şimdi cats.html alıyoruz. Temelde Peki şimdi ne tüm bu istek bana verin lütfen söyleyerek olduğunu www.cats.com/cats.html. Ev sahibi ve orta Yani Bu üst satırında parçası tam orada gösteriyor Ne sayfayı Ben soruyorum. Ama bu durumda cats.com gitmiyor olumlu yanıt edebilmek için. Onlar biz bahsediyoruz bilmiyorum. Ve böylece bu aklınıza gelebilecek bir şeydir görülen before-- HTTP 1.1 404 Not Found. Ne bulamadı Eğer soran bulundu. Bu arada, sana vereceğim bazı geri HTML ve genellikle HTML olduğunu Bazı 404 sayfa içeriğidir. Ve söz konusu cats.com, bu muhtemelen bir sepet ile bazı sevimli kedi üzgün 404 yüz yanlarında, olmak için gidiyoruz çünkü üzücü sayfayı alamadım zaman Eğer bu sizin için aradılar. Bu ne temelleri tür protokol, HTTP protokol istekleri benzemek. Onlar biz nasıl gerçekten benzer konum Benzer bir etkileşim yapacak Sadece insan sözleşmelerde bir şey soran ve geri alma ya da yazma mektup ve cevap bekliyor Belirli bir formatta mektup. Bu hemen hemen ne HTTP sadece standart hale olduğunu erişmek isteyen tüm cihazlar için web sayfaları, köprü transferleri. Bu yüzden formu bir çizgi, bu yöntem isteği hedef HTTP sürümü, bir HTTP isteği hattı denir. Genellikle ilk şey HTTP isteğinin parçası olarak iletilen veya HTTP için soruyorsun. Dediğim gibi çeşit söyleyerek, duygu canım, üst mektup da boş. Onlar olduğunu biliyorum Onlara bir mektup yazma. Yani bu çok benzer söyleyerek, biliyorum Onlar bir HTTP isteği yapıyoruz ve bu özel formatı onlar için soruyorsun. HTTP sürümü muhtemelen Her zaman HTTP / 1/1 olacak. 1.0 de var ama değil Gerçekten artık kullanılmaz. CS50 amaçları doğrultusunda, GET hep muhtemelen ne olacaksın Aslında olduğunuzda kullanarak doğrudan HTTP isteklerini yapma. Ama POST biz konum başka bir seçeneği olduğunu Şu anda konuşmak için gitmiyorum. Ve sonra istek hedef ana sunucu hangi sayfa Eğer almak istiyorum. Dediğim gibi, o ana bilgisayar adı Ayrı bir çizgi genellikle, bir Genel istek ikinci satırı. Ve böylece, birlikte ev sahibi alındığı isim ve istek hedefi Belirli belirtmek Kaynak aranmaktadır. Ben, bir saniye önce bizim 404 örnekte www.cats.com tekrar soruyordu, cats.com ev sahibi olmak. Ve benim isteği doğrultusunda, I /cats.html bahsedilen. O benim isteği hedefi oldu. Yani genel soran oldu içeriği veya bulunduğu bir kaynak www.cats.com/cats.html~~pobj at. Ve sonra ister dayalı yani öz kaynağın mevcut ve sunucu teslim olup olmadığını müşterinin uyarınca kaynak istek, sen alabilirsiniz Geri çeşitli durum kodları. Eğer gördüm bu durum kodlarından bazılarını Onlar cevap parçası çünkü. Bazıları, 200 Tamam, vardır Muhtemelen oldukça sessiz. Muhtemelen hiç görmedim Bir sayfa 200 OK yanıt verir. Sadece sayfa olsun. Bir 404 hatası gibi değil, hangi genellikle oldukça açıktır. Genellikle bu 404 diyor görüyoruz. Yani bazı ne konuşalım Bu durum kodlarının olabilir. Yine, sunucu Bize cevap, onlar HTTP sürümü durumunu cevap olacak. Genellikle HTTP / 1.1. Olacak bu durum kodları nelerdir? Peki, biz bir başarı elde edebilirsiniz. Başarı kategorisinde Yani, biz Metin OK kodu 200 alabilirsiniz. Bu ne anlama gelir? Peki, her şey iyidir. Geçerli bir istekte bulundu. İşte geçerli bir yanıt var. Ben teslim başardı tam olarak ne istediğini. Bazen başka şeyler alabilirsiniz hemen fark olmayacak ama biraz hataları vardır. Onlar denilen yönlendirmeleri konum. Burada iki yaygın olanları var. 301 Taşındı Permanently-- Ne bu temelde demektir sayfa yeni bir konuma şimdi olmasıdır. Sonsuza kadar orada yaşayacak. Ve çoğu tarayıcı olacak otomatik olarak yönlendirme. Yani gerçekten görmek asla ya 301, sen olmadıkça Gerçekten out-of-tarih kullanarak tarayıcı, büyük olasılıkla, 301 yanıt bir parçası olduğundan nokta, nokta, 301 yanıt nokta. Yeni sayfa olduğu ayrıca size söyler. Ve böylece çoğu tarayıcı olacak Sadece orada yönlendirme, Eğer oraya gitmek istiyorum varsayarak. Bazen de 302 buldum alırsınız. Ve bu aslında Hala zaman zaman görebilirsiniz. Bazen sayfalar geçici hareket. Bu yüzden içine inşa edilecek gitmiyor tarayıcıyı söylüyorum isteği kalıcı her zaman değiştirmek için bu isteği görür sizi başka bir şey bunu değiştirmek için yapmak. Yani 302 görebilirsiniz Ki bu temel olarak, Bulunan Bu sayfayı başka bir yerde yaşıyor diyor. Ama gitmiyor sonsuza kadar orada yaşıyor. Sonunda muhtemelen gidecek geri Sence nerede. Sonra bir şeyler alırsınız İstemci hataları gibi. Yani bunlar ettik olanlar Muhtemelen şimdi, gördüm. Muhtemelen görmedim 200'ler ya da 300s, ama muhtemelen konum 400s aşina. Ve biz konuşacağız ne Bir saniyede hakkında 500s de. Sen 401 Yetkisiz görebilirsiniz. Genellikle bu demektir Bir sayfaya erişmeye çalışırken, ama giriş yapmamışsınız. Yani denemek ve bazı gitmek profile veya Facebook bir şey ya da denemek ve erişim some-- iş yerinde konum. Bir şey erişmeye çalışıyoruz senin eserin internet, ama giriş değiliz. Sen sayfayı göremiyorum. Sen 401 yetkisiz alabilirsiniz, hangi biz muhtemelen anlamına gelir Bu isteğini yerine getirmek mümkün olacak, ama önce bunu yapmak için oturum açmanız gerekir. Tersine, 403 alabilirsiniz Gerçekten değil hangi, Yasak Eğer giriş ya da değilseniz önemli. Bu istek izin verilmiyor. Kaynak sunucuda var. Ama bunu erişmek için izin verilmez. Bu genellikle iç dosyalar olduğunu Çeşitli nedenlerle sunucu üzerinde canlı ancak olması amaçlanmamıştır dış dünyadan erişilebilir, ve bu yüzden yasaktır. Onlar orada yaşıyor. Ben bunu bulamıyorum demiyorum. Ama ben sana bunu veremem diyorum. Ve eğer önemli değil içinde ya da değil günlüğe ediyoruz. Ve sonra tabii ki, çok yaygın 404 Not Found. Dosya sunucusu üzerinde yok. Ben tatmin etmek istiyorum İsteğiniz, ama yapamam. Ayrıca bazen sunucu bakın hataları en yaygın, genel varlık 500 iç sunucu hatası, hangi Aslında size bir şey söylemez tüm yanlış gitti ne hakkında. Ama sen yapma aslında değil İsteğiniz bir hata. Aslında sunucu başarısız bulunuyor nasılsa istek üzerine teslim etmek. Yani 500 genel yanıttır. Ayrıca bir şey görürsünüz Hizmet Kullanılamıyor gibi hangi inanıyorum kodu 503 olduğunu. Ve Geçidi Timeout-- eğer Hiç bir sayfa vardı sadece Orada yükleme oturup Yükleme ve yükleme o gidiyor ve eğer sen asla bilemezsiniz Yük ve sonra sonunda sadece dedi ki-- Sadece vazgeçer. Bu bir 504 Ağ geçidi zaman aşımı var. Sunucu istedi İsteğinizi yürütmek, ama bir şeyler ters gitti Sunucu tarafta-- üzerinde değil sizin tarafta-- üzerinde Bu bir sorun neden olur. Şimdi, biz burada hikaye bitebileceğini, ama aslında şimdi yapacağım şey Ben açacağım olan Benim tarayıcı ve size göstermek görmek mümkün olabilir nasıl Bu durum kodlarından bazılarını Hatta genellikle onları görmüyorum eğer. Ve biz alarak bunu gidiyoruz Bir Bazı geliştirici araçları bakmak. Pekala ben burada So Şimdi benim tarayıcı penceresinde. Ve ben biraz öğrenmek istiyorum Bu HTTP istekleri hakkında daha fazla bilgi. Nasıl biz bilmek kesinlikle bilebiliyors-- Bir şeyler yanlış gittiğinde sayfa, goes-- Biz 404 olsun. Hepimiz görmüştüm. Biz göstermek gerekmez. Ama diğer bazı olanları nelerdir? Ve biz nasıl görmek istiyorsunuz eylem bu istekleri? Ben gidiyorum Yani ilk şey do Geliştirici Araçları açmak olduğunu. Yani Geliştirici Araçları inşa edilir en modern tarayıcılarda içine ve bize şeyleri görmek için izin biz başka türlü değil yapmak Bazı ekstra bilgi tür see-- Bizim web altında iletilen istekleri. Burada Google Chrome'u kullanıyorum. Ve Geliştirici Araçları açmak için Chrome'da, sadece, F-12 hit ve açmak için gidiyor tarafta o kadar. Ben isteğini yazın keresinde yakınlaştırmak edeceğiz bu yüzden biz burada ne oluyor görebilirsiniz. Ama benim tarayıcıda yapacağım şey Bu-- bar ve ben burada-- üzerinde yakınlaştırmak olacak Ben www.google.com bir istek yapacak. Hepimiz muhtemelen yaptık daha önce bu isteği. Ben Enter tuşuna gidiyorum. Şimdi, burada benim Developer üzerinde Araçlar, Ağ sekmesini seçtim. Ve burada bir sürü şey fark. These-- 200 OK, 200 OK, bazı bakmak Bu durum kodlarının geliyor. Ben Bulundu 302 alıyorum neden bilmiyorum. Ben bu bir görmek istiyorum farkında değildi. Ama temelde fark oldukça Benim hakkında request-- açısından çok Ben çok basit yapılmış Google'ın sayfasının isteği. Ve işleminde benim isteği teslim Google görünüşte bir çok iş yapmış benim adına diğer istekleri. Ama Google'ın için bir get isteği yaptık sayfa ve ben 200 OKS çok alıyorum. Ben OK 200 göremiyorum Benim ekran, ama ben alıyorum yapılmış istekleri çok. Ben güzel olduğumu Bir daha Emin işe gidiyor o sizin için bu-- kim Gerçekten eski okul vardır, Eğer Facebook olduğunu biliyor olabilir her zaman Facebook.com de. Onun ilk günlerinde oldu wwww.thefacebook.com at. Onlar görünüşte erişim alınamadı Oldukça kısa bir süre için Facebook.com için. Ve bu yüzden bekliyorum Ne Burada bilgi elde etmektir. Bu dışarı tava Ve eğer biz göreceğiz. Ben burada ne bekliyorum bilgi almak için Facebook kalıcı taşındığını thefacebook.com gelen Facebook.com için. Yani bir yerde bekliyorum benim istekleri üstüne yakın üzerinde benim Geliştirici Araçları 301 bildirim almak için Bu Facebook kalıcı taşındı. Yine, ben 301 görmeyeceğim Benim tarayıcı ekranında. Ve bu 301, çünkü kalıcı bir hamle. Varlık Benim tarayıcı, o, modern bir tarayıcı var Muhtemelen yönlendirmek için gidiyor Zaten Facebook.com beni. Ama ne olacağını görelim. Ve şimdi ben gidiyorum thefacebook.com gidin. Ve evet, orada sağ üst kısmında yer alır. Bu gittiler, ama yoktu. Beni burada yukarı edelim. İşte burada üstünde. Ben thefacebook.com bir istek yaptı ve ben bir yanıt alıyorum bu sayfayı kalıcı taşındı. Ve sonra 307 burada bir dahili yönlendirme. Ve böylece bu aslında var ne daha bana taşındı Tanıdık www.facebook.com. Peki bu cevap kodları hala yapmak Onları görmüyorum bile olur. Yapmayacağım göstermektedir 401, 403, 404, muhtemelen gördüm çünkü çeşitli noktalarda olanlar. Ve 500, ben sadece olurdu tür of-- biz şanslı olsun istiyorum Bir 500 var eğer biz bilmiyoruz çünkü neyi sunucuların her yerde şu anda çöktü. Fakat bu kodlar yapmak var, ve bir yol vardır biz yapmak bile onlara erişmek için Bizim sistemlerde ilk elden görmek onları. Ben Doug Lloyd değilim. Bu CS50 olduğunu.