1 00:00:00,000 --> 00:00:05,950 2 00:00:05,950 --> 00:00:09,310 >> SPEAKER: Mari kita bercakap tentang lain protocol-- Pemindahan Hiperteks yang 3 00:00:09,310 --> 00:00:12,060 Protokol, atau HTTP. 4 00:00:12,060 --> 00:00:15,074 Oleh itu, kita telah berbincang tentang IP dan TCP dalam video sebelumnya. 5 00:00:15,074 --> 00:00:17,240 Dan mereka adalah protokol yang menentukan bagaimana maklumat 6 00:00:17,240 --> 00:00:20,970 bergerak dari mesin ke mesin dan daripada program untuk program atau perkhidmatan 7 00:00:20,970 --> 00:00:27,720 untuk menawarkan perkhidmatan melalui internet, melalui rangkaian ini router dan mesin. 8 00:00:27,720 --> 00:00:30,640 >> Tetapi itu biasanya tidak keseluruhan gambar, bukan? 9 00:00:30,640 --> 00:00:33,530 Biasanya apabila kita menghantar maklumat, program ini 10 00:00:33,530 --> 00:00:36,570 itself-- apabila data adalah menerima, berkata, sebagai contoh, 11 00:00:36,570 --> 00:00:44,270 dalam e-mel melalui TCP port 25 atau permintaan halaman web melalui port 80, 12 00:00:44,270 --> 00:00:48,220 biasanya ada satu sistem peraturan yang terdapat untuk memproses apa yang saya baru sahaja diterima. 13 00:00:48,220 --> 00:00:51,960 Dan HTTP adalah contoh hanya protokol itu. 14 00:00:51,960 --> 00:00:54,929 >> HTTP adalah satu-satunya permohonan protokol lapisan 15 00:00:54,929 --> 00:00:56,220 yang kita akan bercakap tentang. 16 00:00:56,220 --> 00:00:59,660 Tetapi ia adalah set yang lain peraturan menetapkan bagaimana 17 00:00:59,660 --> 00:01:02,790 maklumat untuk dihantar dan diproses melalui internet. 18 00:01:02,790 --> 00:01:06,390 Khususnya, HTTP menentukan bagaimana 19 00:01:06,390 --> 00:01:11,300 seseorang mesti membuat permintaan untuk laman web dan tepat bagaimana 20 00:01:11,300 --> 00:01:15,160 pelayan, mesin yang menjadi tuan rumah laman web, 21 00:01:15,160 --> 00:01:17,840 menyampaikan maklumat yang menyandarkan kepada pelanggan. 22 00:01:17,840 --> 00:01:20,010 >> Jadi protokol ini tidak benar-benar mempunyai apa-apa 23 00:01:20,010 --> 00:01:22,270 kaitan dengan bagaimana maklumat bergerak dari titik A 24 00:01:22,270 --> 00:01:26,090 ke titik B. Ia benar-benar sistem peraturan 25 00:01:26,090 --> 00:01:29,700 bagi- ia pada dasarnya peraturan pertunangan untuk bekerja dengan laman web, 26 00:01:29,700 --> 00:01:31,960 sama seperti apabila seseorang gelombang tangan mereka pada anda, 27 00:01:31,960 --> 00:01:33,410 anda sepatutnya gelombang kembali. 28 00:01:33,410 --> 00:01:36,280 Itulah semacam protokol manusia biasa. 29 00:01:36,280 --> 00:01:39,610 Protokol HTTP hanya berkata, jika anda ingin meminta web yang 30 00:01:39,610 --> 00:01:42,730 halaman, pastikan penampilan format anda seperti this-- jenis format seperti 31 00:01:42,730 --> 00:01:44,930 surat perniagaan, sebagai contoh. 32 00:01:44,930 --> 00:01:50,029 Dan sambutan yang akan sama datang mengikut protokol ini. 33 00:01:50,029 --> 00:01:51,820 Terdapat lain-lain protokol lapisan permohonan 34 00:01:51,820 --> 00:01:53,380 bahawa kita tidak akan bercakap kira-kira dalam video. 35 00:01:53,380 --> 00:01:55,790 Tetapi ini termasuk perkara-perkara seperti Protokol Pemindahan Fail, 36 00:01:55,790 --> 00:01:59,200 Mudah Protokol Pemindahan bagi Mail menghantar e-mel, Pengagihan Data 37 00:01:59,200 --> 00:02:02,100 Perkhidmatan, Remote Desktop Protokol, RDP, yang 38 00:02:02,100 --> 00:02:05,590 digunakan jika anda mahu dari jauh akses komputer anda daripada komputer lain, 39 00:02:05,590 --> 00:02:08,479 XMPP, yang kerap dikenali sebagai Jabber atau chat, 40 00:02:08,479 --> 00:02:11,160 jadi ini adalah protokol untuk menggunakan perkhidmatan sembang. 41 00:02:11,160 --> 00:02:13,310 Dan terdapat banyak, banyak, banyak lagi. 42 00:02:13,310 --> 00:02:15,900 >> Jadi setiap kali anda menggunakan perkhidmatan, perkhidmatan yang 43 00:02:15,900 --> 00:02:18,930 menjangkakan maklumat untuk received-- permintaan 44 00:02:18,930 --> 00:02:21,010 menjadi received-- dalam format yang tertentu 45 00:02:21,010 --> 00:02:24,070 dan diperlukan untuk kembali maklumat kembali 46 00:02:24,070 --> 00:02:27,190 dalam format yang tertentu juga. 47 00:02:27,190 --> 00:02:31,750 >> Oleh itu, marilah kita kembali kepada ilustrasi kami daripada kita yang ingin bercakap dengan internet. 48 00:02:31,750 --> 00:02:34,810 Oleh itu, kita berpuas hati, dan kita mahu untuk pergi ke cats.com, bukan? 49 00:02:34,810 --> 00:02:38,550 Jadi, jika kita hanya bercakap dengan cats.com, kita boleh berkata sesuatu seperti hey, 50 00:02:38,550 --> 00:02:39,720 boleh saya lihat halaman rumah anda? 51 00:02:39,720 --> 00:02:42,320 Dan cats.com akan mungkin bertindak balas, yeah, pasti. 52 00:02:42,320 --> 00:02:43,440 Di sini anda pergi. 53 00:02:43,440 --> 00:02:46,440 Jadi, itu satu bentuk manusia daripada meminta-jawab. 54 00:02:46,440 --> 00:02:47,980 >> Apa yang kelihatan seperti dalam HTTP? 55 00:02:47,980 --> 00:02:51,340 Baik, ia sebenarnya jenis diterjemahkan cukup bersih untuk sesuatu seperti ini. 56 00:02:51,340 --> 00:02:57,290 Kita mungkin boleh mengatakan GET / HTTP / 1.1 dari cats.com tuan rumah. 57 00:02:57,290 --> 00:03:03,039 Jadi, pada asasnya apa yang saya lakukan di sini adalah meminta untuk www.cats.com/ laman web. 58 00:03:03,039 --> 00:03:05,330 Kami biasanya meninggalkan slash pada masa kini, tetapi itu akan hanya 59 00:03:05,330 --> 00:03:07,200 Maksud utama cats.com ini. 60 00:03:07,200 --> 00:03:11,910 >> Oh, dan dengan cara itu, saya akan menjadi menggunakan versi HTTP 61 00:03:11,910 --> 00:03:14,182 1.1 untuk berkomunikasi dengan anda. 62 00:03:14,182 --> 00:03:16,390 Itulah jenis seakan-akan berkata, seperti, dengan cara itu, 63 00:03:16,390 --> 00:03:17,870 Saya akan bercakap dalam bahasa Perancis, atau dengan cara itu, 64 00:03:17,870 --> 00:03:19,370 Saya akan bercakap dalam Bahasa Inggeris. 65 00:03:19,370 --> 00:03:22,160 Itu hanya format protokol. 66 00:03:22,160 --> 00:03:25,050 Ia juga 1.0, yang merupakan tidak biasa digunakan lagi. 67 00:03:25,050 --> 00:03:30,615 Jadi, saya bercakap HTTP 1.1, dan Saya mahu www.cats.com/. 68 00:03:30,615 --> 00:03:31,710 Sila dapatkan bahawa bagi saya. 69 00:03:31,710 --> 00:03:34,610 >> Dan kemudian ada maklumat lain, too-- dot, dot, dot sana, 70 00:03:34,610 --> 00:03:38,234 yang merupakan maklumat mengenai yang anda begitu cats.com 71 00:03:38,234 --> 00:03:39,400 akan tahu di mana untuk menghantarnya. 72 00:03:39,400 --> 00:03:41,480 Tetapi ini adalah dua jenis bahagian kritikal 73 00:03:41,480 --> 00:03:44,000 pada awal-awal HTTP request-- 74 00:03:44,000 --> 00:03:46,770 seperti apabila anda memulakan surat yang kamu katakan, sayang, kosong. 75 00:03:46,770 --> 00:03:49,710 Ini adalah sangat serupa dalam semangat untuk itu. 76 00:03:49,710 --> 00:03:52,370 >> Dan jika cats.com akan berkata, oh, pasti, di sini anda pergi. 77 00:03:52,370 --> 00:03:55,590 Mereka mungkin bertindak balas seperti this-- Saya juga bertindak balas. 78 00:03:55,590 --> 00:03:57,960 Saya juga bercakap HTTP 1.1. 79 00:03:57,960 --> 00:04:01,720 Permintaan anda diluluskan, 200 OK. 80 00:04:01,720 --> 00:04:04,709 Apa yang anda kira-kira untuk terima adalah HTML dan kemudian 81 00:04:04,709 --> 00:04:06,250 dot, dot, dot beberapa maklumat tambahan. 82 00:04:06,250 --> 00:04:10,620 Dan di bahagian paling bawah daripada permintaan sebenarnya HTML, 83 00:04:10,620 --> 00:04:16,339 bahasa penanda itu, Kandungan laman utama cats.com ini. 84 00:04:16,339 --> 00:04:21,227 >> Jadi HTTP / 1.1-- Saya mengakui anda permintaan telah diterima melalui HTTP 1.1. 85 00:04:21,227 --> 00:04:22,310 Permintaan anda telah diluluskan. 86 00:04:22,310 --> 00:04:25,810 Saya boleh memberi anda apa yang anda mahu, 200 OK. 87 00:04:25,810 --> 00:04:27,440 Anda kira-kira untuk menerima HTML. 88 00:04:27,440 --> 00:04:30,450 Dan kemudian di sini adalah HTML yang anda minta. 89 00:04:30,450 --> 00:04:33,930 >> Tetapi kadang-kadang permintaan kami tidak selalu pergi agak mengikut perancangan. 90 00:04:33,930 --> 00:04:37,100 Bolehkah saya lihat halaman cats.html anda? 91 00:04:37,100 --> 00:04:40,366 Nah, bagaimana jika mereka berkata, kami tidak mempunyai laman cats.html, 92 00:04:40,366 --> 00:04:42,740 yang seolah-olah jenis realistik kerana mereka cats.com. 93 00:04:42,740 --> 00:04:44,400 Anda akan berfikir mereka perlu cats.html. 94 00:04:44,400 --> 00:04:45,420 Tetapi OK. 95 00:04:45,420 --> 00:04:48,484 Jadi ini adalah jenis yang interaksi manusia konvensional 96 00:04:48,484 --> 00:04:49,650 kami telah kini mempunyai dengan cats.com. 97 00:04:49,650 --> 00:04:51,060 Bagaimana yang menterjemah? 98 00:04:51,060 --> 00:04:52,726 >> Ini mungkin sesuatu yang biasa kepada anda. 99 00:04:52,726 --> 00:04:55,690 Permintaan kami kelihatan sama, kecuali bukannya mendapat slash 100 00:04:55,690 --> 00:04:58,110 kita kini mendapat cats.html. 101 00:04:58,110 --> 00:05:01,810 Jadi sekarang apa yang pada asasnya keseluruhan ini permintaan mengatakan ini sila berikan saya 102 00:05:01,810 --> 00:05:05,620 www.cats.com/cats.html. 103 00:05:05,620 --> 00:05:08,700 Jadi tuan rumah dan tengah sebahagian daripada yang baris atas 104 00:05:08,700 --> 00:05:14,632 terdapat mengesan dengan tepat apa halaman Saya sedang meminta. 105 00:05:14,632 --> 00:05:17,590 Tetapi cats.com dalam kes ini tidak akan dapat bertindak balas secara positif. 106 00:05:17,590 --> 00:05:19,089 Mereka tidak tahu kita sedang bercakap tentang. 107 00:05:19,089 --> 00:05:25,170 Dan hal ini adalah sesuatu yang anda mungkin mempunyai dilihat HTTP sebelum itu 1.1 404 Not Found. 108 00:05:25,170 --> 00:05:27,180 Saya tidak dapat mencari apa yang yang anda meminta. 109 00:05:27,180 --> 00:05:30,460 Dengan cara ini, saya akan memberikan anda kembali beberapa HTML, dan biasanya yang HTML 110 00:05:30,460 --> 00:05:32,351 adalah kandungan beberapa 404 halaman. 111 00:05:32,351 --> 00:05:34,100 Dan dalam hal cats.com, ia mungkin 112 00:05:34,100 --> 00:05:37,720 beberapa kucing comel dalam bakul dengan 404 muka yang sedih akan datang kepada mereka, 113 00:05:37,720 --> 00:05:40,920 kerana anda akan menjadi sedih apabila anda tidak mendapat halaman 114 00:05:40,920 --> 00:05:43,040 yang anda cari. 115 00:05:43,040 --> 00:05:48,520 >> Itulah jenis asas-asas apa yang protokol, permintaan protokol HTTP 116 00:05:48,520 --> 00:05:49,180 seperti. 117 00:05:49,180 --> 00:05:52,640 Mereka benar-benar serupa dengan bagaimana kita akan membuat interaksi yang sama 118 00:05:52,640 --> 00:05:55,460 dalam konvensyen hanya manusia meminta sesuatu 119 00:05:55,460 --> 00:05:58,250 dan mendapatkan itu kembali atau menulis surat dan mengharapkan sambutan 120 00:05:58,250 --> 00:06:00,380 surat dalam format tertentu. 121 00:06:00,380 --> 00:06:03,910 Yang cukup banyak apa HTTP hanya canonicalizing 122 00:06:03,910 --> 00:06:10,190 untuk semua peranti yang ingin akses laman web, pemindahan hiperteks. 123 00:06:10,190 --> 00:06:15,110 >> Jadi garis bentuk, ini kaedah versi permintaan sasaran HTTP, 124 00:06:15,110 --> 00:06:17,100 dipanggil garis permintaan HTTP. 125 00:06:17,100 --> 00:06:23,740 Ia biasanya perkara pertama yang dihantar sebagai sebahagian daripada permintaan HTTP 126 00:06:23,740 --> 00:06:26,180 atau jika anda meminta HTTP. 127 00:06:26,180 --> 00:06:29,970 Ia semacam suka, seperti yang saya katakan, katanya: sayang, kosong di bahagian atas surat anda. 128 00:06:29,970 --> 00:06:32,880 Mereka tahu bahawa anda menuliskannya surat. 129 00:06:32,880 --> 00:06:34,796 Jadi ini adalah hampir sama dengan mengatakan, saya tahu 130 00:06:34,796 --> 00:06:37,670 bahawa mereka membuat permintaan HTTP dan ini adalah format yang tertentu 131 00:06:37,670 --> 00:06:39,090 mereka meminta. 132 00:06:39,090 --> 00:06:43,810 >> Versi HTTP mungkin sentiasa akan menjadi HTTP / 1/1. 133 00:06:43,810 --> 00:06:46,670 1.0 juga wujud tetapi tidak benar-benar digunakan lagi. 134 00:06:46,670 --> 00:06:49,200 Untuk tujuan CS50, GET mungkin sentiasa 135 00:06:49,200 --> 00:06:51,540 apa yang anda akan menjadi menggunakan apabila anda benar-benar 136 00:06:51,540 --> 00:06:54,250 membuat permintaan HTTP langsung. 137 00:06:54,250 --> 00:06:57,720 Tetapi POST adalah satu lagi pilihan yang kita tidak akan bercakap tentang sekarang. 138 00:06:57,720 --> 00:07:02,980 Dan kemudian permintaan-sasaran adalah apa halaman pada pelayan tuan rumah 139 00:07:02,980 --> 00:07:05,812 anda ingin mendapatkan. 140 00:07:05,812 --> 00:07:08,020 Seperti yang saya katakan, yang nama hos adalah barisan yang berasingan, biasanya 141 00:07:08,020 --> 00:07:10,350 baris kedua permintaan keseluruhan. 142 00:07:10,350 --> 00:07:13,660 Dan sebagainya diambil bersama-sama, pihak nama dan sasaran permintaan 143 00:07:13,660 --> 00:07:16,070 nyatakan tertentu sumber itu dicari. 144 00:07:16,070 --> 00:07:20,986 Dalam contoh 404 kami kedua yang lalu, saya meminta sekali lagi untuk www.cats.com, 145 00:07:20,986 --> 00:07:22,940 cats.com menjadi tuan rumah. 146 00:07:22,940 --> 00:07:26,300 Dan selaras permintaan saya, Saya berkata /cats.html. 147 00:07:26,300 --> 00:07:27,790 Itu adalah sasaran permintaan saya. 148 00:07:27,790 --> 00:07:31,200 Jadi secara keseluruhan saya meminta untuk kandungan atau sumber yang terletak 149 00:07:31,200 --> 00:07:36,410 di www.cats.com/cats.html. 150 00:07:36,410 --> 00:07:38,870 >> Dan kemudian berdasarkan sama ada sumber wujud 151 00:07:38,870 --> 00:07:42,160 dan sama ada pelayan boleh menyampaikan sumber menurut pelanggan yang 152 00:07:42,160 --> 00:07:46,760 permintaan, anda mungkin akan mendapat pelbagai kod status kembali. 153 00:07:46,760 --> 00:07:50,280 Sebahagian daripada kod status anda lihat kerana mereka adalah sebahagian daripada sambutan. 154 00:07:50,280 --> 00:07:53,580 Sesetengah daripada mereka, 200 OK, adalah mungkin cukup senyap. 155 00:07:53,580 --> 00:07:55,650 Anda mungkin tidak pernah dilihat halaman yang bertindak balas 200 OK. 156 00:07:55,650 --> 00:07:56,890 Anda hanya mendapat halaman. 157 00:07:56,890 --> 00:08:01,260 Ia tidak seperti ralat 404, yang biasanya cukup jelas. 158 00:08:01,260 --> 00:08:03,850 Anda biasanya melihat bahawa ia mengatakan 404. 159 00:08:03,850 --> 00:08:06,880 >> Jadi mari kita bercakap tentang apa yang ada dari orang-orang kod status mungkin. 160 00:08:06,880 --> 00:08:09,660 Sekali lagi, apabila pelayan bertindak balas kepada kami, mereka 161 00:08:09,660 --> 00:08:12,120 akan bertindak balas status versi HTTP. 162 00:08:12,120 --> 00:08:14,020 Biasanya HTTP / 1.1. 163 00:08:14,020 --> 00:08:17,410 Apakah ini kod status akan menjadi? 164 00:08:17,410 --> 00:08:18,890 Nah, kita mungkin akan mendapat kejayaan. 165 00:08:18,890 --> 00:08:23,617 Jadi dalam kategori kejayaan, kita mungkin akan mendapat kod 200 dengan OK teks. 166 00:08:23,617 --> 00:08:24,450 Apakah ini bermakna? 167 00:08:24,450 --> 00:08:25,491 Nah, segala-galanya adalah baik. 168 00:08:25,491 --> 00:08:26,721 Anda telah membuat permintaan yang sah. 169 00:08:26,721 --> 00:08:27,720 Berikut adalah jawapan yang sah. 170 00:08:27,720 --> 00:08:30,060 Saya dapat menyampaikan apa yang anda mahu. 171 00:08:30,060 --> 00:08:33,080 >> Kadang-kadang anda mungkin akan mendapat perkara-perkara lain bahawa anda tidak akan melihat dengan segera 172 00:08:33,080 --> 00:08:35,140 tetapi agak kegagalan. 173 00:08:35,140 --> 00:08:36,422 Mereka dipanggil suisnya. 174 00:08:36,422 --> 00:08:37,630 Ada dua yang biasa di sini. 175 00:08:37,630 --> 00:08:41,520 301 Permanently-- Berpindah apa ini pada dasarnya bermakna 176 00:08:41,520 --> 00:08:43,559 adalah laman yang kini berada di lokasi baru. 177 00:08:43,559 --> 00:08:44,920 Ia akan tinggal di sana selama-lamanya. 178 00:08:44,920 --> 00:08:47,150 Dan pelayar akan secara automatik mengarahkan anda. 179 00:08:47,150 --> 00:08:49,860 Jadi, anda akan tidak pernah benar-benar melihat 301, sama ada, melainkan jika anda 180 00:08:49,860 --> 00:08:52,210 menggunakan benar-benar keluar-of-tarikh pelayar, mungkin, 181 00:08:52,210 --> 00:08:57,660 kerana sambutan 301 adalah sebahagian daripada dot, dot, dot sambutan 301. 182 00:08:57,660 --> 00:08:59,577 Ia juga memberitahu anda di mana halaman baru adalah. 183 00:08:59,577 --> 00:09:01,660 Dan sebagainya pelayar akan hanya mengarahkan anda ke sana, 184 00:09:01,660 --> 00:09:03,570 menganggap bahawa anda mahu pergi ke sana. 185 00:09:03,570 --> 00:09:05,440 >> Kadang-kadang anda juga akan mendapat 302 dijumpai. 186 00:09:05,440 --> 00:09:07,850 Dan yang satu ini anda sebenarnya mungkin masih melihat sekali-sekala. 187 00:09:07,850 --> 00:09:09,720 Kadang-kadang laman berpindah buat sementara waktu. 188 00:09:09,720 --> 00:09:13,570 Oleh itu, ia tidak akan dibina ke permintaan itu memberitahu pelayar 189 00:09:13,570 --> 00:09:16,740 untuk selama-lamanya berubah bila-bila masa ia melihat kepadamu apa yang engkau 190 00:09:16,740 --> 00:09:18,255 membuat untuk mengubahnya kepada sesuatu yang lain. 191 00:09:18,255 --> 00:09:21,210 Jadi, anda mungkin melihat 302 Dijumpai, yang pada asasnya 192 00:09:21,210 --> 00:09:22,710 kata halaman ini hidup di tempat lain. 193 00:09:22,710 --> 00:09:24,418 Tetapi ia tidak akan tinggal di sana selama-lamanya. 194 00:09:24,418 --> 00:09:29,052 Ia akan akhirnya mungkin pergi kembali kepada di mana anda fikir ia. 195 00:09:29,052 --> 00:09:31,780 >> Maka anda akan mendapatkan perkara yang seperti kesilapan pelanggan. 196 00:09:31,780 --> 00:09:34,012 Jadi ini adalah orang-orang yang anda telah mungkin dilihat, kini. 197 00:09:34,012 --> 00:09:35,970 Anda mungkin tidak pernah melihat yang 200s atau 300-an, 198 00:09:35,970 --> 00:09:37,370 tetapi anda mungkin biasa dengan 400-an. 199 00:09:37,370 --> 00:09:40,130 Dan itulah yang kita akan bercakap kira-kira dalam satu saat, 500-an juga. 200 00:09:40,130 --> 00:09:42,580 >> Anda mungkin melihat 401 yang tidak dibenarkan. 201 00:09:42,580 --> 00:09:45,100 Biasanya ini bermakna anda cuba untuk mengakses laman, 202 00:09:45,100 --> 00:09:46,230 tetapi anda belum log masuk. 203 00:09:46,230 --> 00:09:50,500 Jadi, anda cuba pergi ke beberapa profil atau sesuatu di Facebook 204 00:09:50,500 --> 00:09:53,106 atau anda cuba dan akses some-- anda berada di tempat kerja. 205 00:09:53,106 --> 00:09:56,619 Anda cuba untuk mengakses sesuatu di internet kerja anda, 206 00:09:56,619 --> 00:09:57,660 tetapi anda belum log masuk. 207 00:09:57,660 --> 00:09:58,740 Anda tidak boleh melihat halaman. 208 00:09:58,740 --> 00:10:01,770 Anda mungkin mendapat 401 yang tidak dibenarkan, yang bermaksud kita mungkin 209 00:10:01,770 --> 00:10:06,590 akan dapat memenuhi permintaan ini, tetapi pada mulanya, anda perlu log masuk untuk berbuat demikian. 210 00:10:06,590 --> 00:10:09,590 >> Sebaliknya, anda mungkin akan mendapat 403 Larangan, yang ia tidak benar-benar 211 00:10:09,590 --> 00:10:11,490 kira jika anda log masuk atau tidak. 212 00:10:11,490 --> 00:10:13,020 Permintaan ini tidak dibenarkan. 213 00:10:13,020 --> 00:10:15,320 Sumber yang wujud pada pelayan. 214 00:10:15,320 --> 00:10:17,817 Tetapi anda tidak dibenarkan untuk mengaksesnya. 215 00:10:17,817 --> 00:10:20,900 Ini adalah fail biasanya dalaman yang tinggal pada pelayan untuk pelbagai sebab 216 00:10:20,900 --> 00:10:23,860 tetapi tidak bertujuan untuk menjadi ke tempat-tempat dunia luar, 217 00:10:23,860 --> 00:10:25,030 dan supaya mereka adalah dilarang. 218 00:10:25,030 --> 00:10:27,120 Mereka tinggal di sana. 219 00:10:27,120 --> 00:10:28,440 Saya tidak mengatakan saya tidak boleh menemuinya. 220 00:10:28,440 --> 00:10:30,030 Tetapi saya katakan saya tidak boleh memberikannya kepada anda. 221 00:10:30,030 --> 00:10:32,071 Dan ia tidak kira jika anda log masuk atau tidak. 222 00:10:32,071 --> 00:10:35,479 Kemudian sudah tentu, sangat umum 404 Not Found. 223 00:10:35,479 --> 00:10:37,020 Fail tidak wujud pada pelayan. 224 00:10:37,020 --> 00:10:40,200 Saya ingin memenuhi permintaan anda, tetapi saya tidak boleh. 225 00:10:40,200 --> 00:10:43,390 >> Anda juga kadang-kadang melihat pelayan kesilapan, yang paling biasa umumnya 226 00:10:43,390 --> 00:10:46,990 menjadi 500 Ralat Pelayan Dalaman, yang sebenarnya tidak memberitahu anda apa-apa 227 00:10:46,990 --> 00:10:50,200 pada semua tentang apa yang telah berlaku. 228 00:10:50,200 --> 00:10:53,290 Tetapi ia tidak benar-benar anda membuat kesilapan dalam permintaan anda. 229 00:10:53,290 --> 00:10:58,200 Ini sebenarnya pelayan gagal menunaikan permintaan itu entah bagaimana. 230 00:10:58,200 --> 00:11:00,040 Jadi 500 adalah tindak balas umum. 231 00:11:00,040 --> 00:11:03,190 >> Anda juga akan melihat sesuatu seperti Perkhidmatan Unavailable, 232 00:11:03,190 --> 00:11:05,720 yang saya percaya adalah kod 503. 233 00:11:05,720 --> 00:11:07,882 Dan Gateway Timeout-- jika anda pernah mempunyai halaman yang adil 234 00:11:07,882 --> 00:11:09,590 duduk di sana memuatkan dan memuatkan dan loading 235 00:11:09,590 --> 00:11:12,715 dan anda tidak tahu jika ia akan beban dan kemudian akhirnya ia hanya says-- 236 00:11:12,715 --> 00:11:13,650 hanya memberikan sehingga. 237 00:11:13,650 --> 00:11:15,460 Itulah 504 Gateway Had masa. 238 00:11:15,460 --> 00:11:17,600 Pelayan mahu melaksanakan permintaan anda, 239 00:11:17,600 --> 00:11:19,930 kerana berlaku kesilapan pada side-- pelayan 240 00:11:19,930 --> 00:11:24,452 bukan pada side-- anda untuk menyebabkan bahawa untuk menjadi masalah. 241 00:11:24,452 --> 00:11:27,410 Sekarang, kita boleh berakhir cerita di sini, tetapi apa yang saya benar-benar akan lakukan sekarang 242 00:11:27,410 --> 00:11:29,368 adalah saya akan membuka pelayar saya dan menunjukkan kepada anda 243 00:11:29,368 --> 00:11:32,250 bagaimana anda mungkin dapat melihat sesetengah kod status 244 00:11:32,250 --> 00:11:34,580 walaupun anda biasanya tidak melihat mereka. 245 00:11:34,580 --> 00:11:39,090 Dan kami akan berbuat demikian dengan mengambil yang melihat beberapa alat pemaju. 246 00:11:39,090 --> 00:11:42,050 >> Baiklah Jadi di sini saya sekarang dalam tetingkap pelayar saya. 247 00:11:42,050 --> 00:11:45,840 Dan saya mahu belajar sedikit lebih mengenai permintaan HTTP. 248 00:11:45,840 --> 00:11:49,060 Bagaimana saya know-- sudah tentu kita tahu jika halaman goes-- apabila ada masalah, 249 00:11:49,060 --> 00:11:49,630 kita akan mendapat 404. 250 00:11:49,630 --> 00:11:50,465 Kita melihat bahawa. 251 00:11:50,465 --> 00:11:51,840 Kita tidak perlu untuk menggambarkan bahawa. 252 00:11:51,840 --> 00:11:53,048 Tetapi apakah beberapa yang lain? 253 00:11:53,048 --> 00:11:56,850 Dan bagaimana kita akan melihat permintaan ini dalam tindakan? 254 00:11:56,850 --> 00:11:59,990 >> Perkara Jadi pertama saya akan lakukan adalah membuka Alat Pembangun. 255 00:11:59,990 --> 00:12:02,580 Jadi Alat Pembangun dibina ke dalam pelayar moden 256 00:12:02,580 --> 00:12:06,020 dan membolehkan kita untuk melihat perkara-perkara bahawa kita tidak melakukan sebaliknya 257 00:12:06,020 --> 00:12:10,580 see-- beberapa jenis maklumat tambahan sebanyak sedang dihantar di bawah web kami 258 00:12:10,580 --> 00:12:11,500 permintaan. 259 00:12:11,500 --> 00:12:12,790 Saya menggunakan Google Chrome di sini. 260 00:12:12,790 --> 00:12:16,900 Dan untuk membuka Alat Pembangun dalam Chrome, anda hanya tekan F-12, 261 00:12:16,900 --> 00:12:18,729 dan ia akan membuka sehingga di sebelah. 262 00:12:18,729 --> 00:12:21,770 Apabila saya menaip permintaan itu, saya akan zum masuk supaya kita dapat melihat apa yang sedang berlaku di sini. 263 00:12:21,770 --> 00:12:28,530 Tetapi apa yang saya akan lakukan pada pelayar saya bar is-- dan saya akan zum di lebih sini-- 264 00:12:28,530 --> 00:12:32,427 Aku akan membuat permintaan kepada www.google.com. 265 00:12:32,427 --> 00:12:34,260 Kami semua mungkin dibuat permintaan ini sebelum ini. 266 00:12:34,260 --> 00:12:35,400 Saya akan tekan Enter. 267 00:12:35,400 --> 00:12:41,920 268 00:12:41,920 --> 00:12:46,400 >> Sekarang, di sini dalam Pemaju saya Alat, saya telah memilih tab Rangkaian. 269 00:12:46,400 --> 00:12:48,010 Dan anda dapati banyak perkara di sini. 270 00:12:48,010 --> 00:12:51,732 Lihatlah these-- 200 OK, 200 OK, beberapa ini kod status datang. 271 00:12:51,732 --> 00:12:53,356 Saya tidak tahu mengapa saya mendapat 302 Found. 272 00:12:53,356 --> 00:12:54,860 Saya tidak sedar saya melihat bahawa salah satu. 273 00:12:54,860 --> 00:12:58,192 Tetapi pada dasarnya notis yang cukup banyak, dari segi request-- Google saya 274 00:12:58,192 --> 00:13:00,150 Saya membuat sangat mudah permintaan untuk halaman Google. 275 00:13:00,150 --> 00:13:02,890 Dan dalam proses menyampaikan permintaan saya, 276 00:13:02,890 --> 00:13:05,670 Google nampaknya telah membuat banyak permintaan lain bagi pihak saya. 277 00:13:05,670 --> 00:13:11,990 >> Tetapi saya telah membuat permohonan untuk mendapatkan Google halaman dan saya mendapat banyak 200 OKS. 278 00:13:11,990 --> 00:13:14,830 Saya tidak melihat 200 OK pada skrin saya, tetapi saya mendapat 279 00:13:14,830 --> 00:13:17,170 banyak permintaan yang telah dibuat. 280 00:13:17,170 --> 00:13:19,550 Satu lagi yang saya cukup pasti akan bekerja 281 00:13:19,550 --> 00:13:21,920 is-- untuk bersiar- benar-benar tua-sekolah, 282 00:13:21,920 --> 00:13:26,012 anda mungkin tahu bahawa Facebook adalah tidak sentiasa di Facebook.com. 283 00:13:26,012 --> 00:13:29,780 Di peringkat awal ia di wwww.thefacebook.com. 284 00:13:29,780 --> 00:13:33,560 Mereka nampaknya tidak boleh mendapat akses untuk Facebook.com untuk agak seketika. 285 00:13:33,560 --> 00:13:35,870 >> Dan jadi apa yang saya menjangkakan di sini adalah untuk mendapatkan maklumat. 286 00:13:35,870 --> 00:13:37,315 Dan kita akan melihat jika ini kuali keluar. 287 00:13:37,315 --> 00:13:39,190 Apa yang saya menjangkakan sini adalah untuk mendapatkan maklumat 288 00:13:39,190 --> 00:13:43,980 bahawa Facebook telah berpindah secara kekal dari thefacebook.com untuk Facebook.com. 289 00:13:43,980 --> 00:13:46,830 Jadi, saya mengharapkan suatu tempat berhampiran bahagian atas permintaan saya 290 00:13:46,830 --> 00:13:50,730 lebih dalam Alat Pembangun saya untuk mendapatkan pemberitahuan 301 291 00:13:50,730 --> 00:13:52,580 bahawa Facebook telah berpindah secara kekal. 292 00:13:52,580 --> 00:13:59,070 Sekali lagi, saya tidak akan melihat 301 pada skrin pelayar saya. 293 00:13:59,070 --> 00:14:01,380 Dan kerana ia adalah 301, ia adalah satu langkah yang kekal. 294 00:14:01,380 --> 00:14:03,500 Pelayar saya, adalah bahawa ia adalah satu pelayar moden, 295 00:14:03,500 --> 00:14:06,110 mungkin akan mengarahkan saya Facebook.com juga. 296 00:14:06,110 --> 00:14:07,260 Tetapi mari kita lihat apa yang berlaku. 297 00:14:07,260 --> 00:14:09,340 >> Dan sekarang saya akan pergi ke thefacebook.com. 298 00:14:09,340 --> 00:14:11,370 Dan yep, ada ia betul di bahagian atas. 299 00:14:11,370 --> 00:14:13,390 Ia pergi, tetapi ia berada di sana. 300 00:14:13,390 --> 00:14:14,820 Biar saya tatal ke atas di sini. 301 00:14:14,820 --> 00:14:18,004 302 00:14:18,004 --> 00:14:18,920 Di sini di bahagian atas. 303 00:14:18,920 --> 00:14:23,080 Saya membuat permintaan kepada thefacebook.com, dan saya mendapat jawapan 304 00:14:23,080 --> 00:14:25,410 bahawa halaman ini telah berpindah secara kekal. 305 00:14:25,410 --> 00:14:27,770 Dan kemudian 307 di sini adalah yang redirect dalaman. 306 00:14:27,770 --> 00:14:30,680 Dan hal ini adalah apa yang benar-benar mempunyai mendorong saya untuk lebih 307 00:14:30,680 --> 00:14:33,330 www.facebook.com biasa. 308 00:14:33,330 --> 00:14:38,480 >> Jadi ini Kod balas lakukan masih berlaku, walaupun kita tidak dapat melihat mereka. 309 00:14:38,480 --> 00:14:40,710 Saya tidak akan menggambarkan 401, 403, 404, 310 00:14:40,710 --> 00:14:43,090 kerana anda mungkin telah melihat mereka yang berada di pelbagai mata. 311 00:14:43,090 --> 00:14:45,740 Dan 500, saya hanya akan menjadi jenis daripada- kita akan mendapatkan bertuah 312 00:14:45,740 --> 00:14:50,380 jika mendapat 500 kerana kita tidak tahu apa yang pelayan pada masa ini turun di mana sahaja. 313 00:14:50,380 --> 00:14:53,060 Tetapi kod ini melakukan wujud, dan ada cara yang 314 00:14:53,060 --> 00:14:58,610 untuk mengakses mereka walaupun kita tidak melihat mereka secara langsung pada sistem kami. 315 00:14:58,610 --> 00:14:59,530 Saya Doug Lloyd. 316 00:14:59,530 --> 00:15:01,570 Ini adalah CS50. 317 00:15:01,570 --> 00:15:03,557