1 00:00:00,000 --> 00:00:00,200 2 00:00:00,200 --> 00:00:02,280 >> SPEAKER 1: Baiklah, jadi apa itu Anda konkret perlu lakukan? 3 00:00:02,280 --> 00:00:04,140 Nah, ternyata ada yang hanya empat fungsi 4 00:00:04,140 --> 00:00:06,390 bahwa Anda perlu untuk mengimplementasikan fungsi yang adalah 5 00:00:06,390 --> 00:00:08,520 integral yang tepat pengoperasian server web, 6 00:00:08,520 --> 00:00:10,720 tapi semua yang Perilaku ini sangat sempit 7 00:00:10,720 --> 00:00:13,104 didefinisikan, sehingga mereka hanya melakukan cukup banyak satu hal. 8 00:00:13,104 --> 00:00:15,270 Hal pertama yang Anda akan perlu lakukan adalah melaksanakan, 9 00:00:15,270 --> 00:00:17,540 per spesifikasi, fungsi LOOKUP. 10 00:00:17,540 --> 00:00:20,900 Ini adalah fungsi yang cukup sederhana di akhir, yang mengambil sebagai argumen 11 00:00:20,900 --> 00:00:24,690 apapun path ke file bahwa pengguna ingin meminta, 12 00:00:24,690 --> 00:00:28,310 dan Anda perlu untuk merespon dengan disebut tipe MIME, atau Content-type, 13 00:00:28,310 --> 00:00:29,200 dari file itu. 14 00:00:29,200 --> 00:00:31,415 Misalnya, jika itu file seperti, halo dot 15 00:00:31,415 --> 00:00:37,470 HTML Anda akan merespon dengan suatu MIME jenis kutipan tanda kutip teks slash HTML. 16 00:00:37,470 --> 00:00:40,920 >> Atau jika gambar, Anda mungkin ingin untuk merespon dengan gambar dot slash 17 00:00:40,920 --> 00:00:42,990 Jiff atau gambar JPEG memangkas. 18 00:00:42,990 --> 00:00:46,280 Lihat spesifikasi untuk berbagai format file yang Anda butuhkan untuk mendeteksi. 19 00:00:46,280 --> 00:00:49,760 Tapi itu benar-benar bermuara mengambil melihat jalan, yang Anda melewati, 20 00:00:49,760 --> 00:00:52,870 dan melihat file-nya ekstensi, beberapa karakter terakhir 21 00:00:52,870 --> 00:00:54,297 setelah waktu tambahan atau dot. 22 00:00:54,297 --> 00:00:57,130 Jadi kita akan menyerahkan kepada Anda dengan beberapa dari petunjuk dalam spesifikasi 23 00:00:57,130 --> 00:01:00,170 untuk mencari tahu persis bagaimana untuk menemukan bahwa dot dan ekstensi file 24 00:01:00,170 --> 00:01:02,840 sehingga Anda dapat melakukan pemetaan dari satu ke yang lain. 25 00:01:02,840 --> 00:01:04,395 >> Selanjutnya adalah fungsi parse. 26 00:01:04,395 --> 00:01:06,270 Jadi yang satu ini sedikit lebih terlibat, dalam 27 00:01:06,270 --> 00:01:08,590 Anda perlu mengambil dalam Argumen [tidak terdengar], 28 00:01:08,590 --> 00:01:12,030 itu iterasi di atasnya, karakter untuk karakter, atau string dengan string yang, 29 00:01:12,030 --> 00:01:14,660 dalam rangka untuk memastikan bahwa memenuhi persis 30 00:01:14,660 --> 00:01:19,155 definisi formal yang pertama baris request, sesuai spesifikasi. 31 00:01:19,155 --> 00:01:23,930 Dan Anda perlu memuat ke absolut jalan yang substring, yang mewakili 32 00:01:23,930 --> 00:01:26,550 sesuatu seperti, memangkas halo dot HTML. 33 00:01:26,550 --> 00:01:29,960 Sementara itu, opsional, setelah itu jalan mungkin tanda tanya 34 00:01:29,960 --> 00:01:32,240 dan kemudian query string seperti, q sama kucing, 35 00:01:32,240 --> 00:01:35,310 atau q sama kucing Ampersand, dan kemudian sepasang kunci nilai. 36 00:01:35,310 --> 00:01:38,380 Jadi Anda akan perlu melangkahi karakter-karakter, 37 00:01:38,380 --> 00:01:41,150 juga, sampai ruang pertama, dalam rangka 38 00:01:41,150 --> 00:01:47,327 untuk membuat string yang menyimpan di dalamnya query string itu sendiri. 39 00:01:47,327 --> 00:01:49,410 Berikutnya, Anda akan melaksanakan fungsi beban. 40 00:01:49,410 --> 00:01:52,493 Jadi ternyata, jika Anda melihat melalui kode sumber, seperti spec mengarahkan, 41 00:01:52,493 --> 00:01:54,210 fungsi beban digunakan di dua tempat. 42 00:01:54,210 --> 00:01:57,420 Ini baik digunakan untuk memuat output dari PHP Interpreter. 43 00:01:57,420 --> 00:01:59,700 Dan kami menulis semua kode penanganan PHP, 44 00:01:59,700 --> 00:02:01,840 tapi itu perlu menggunakan fungsi yang disebut 45 00:02:01,840 --> 00:02:06,350 beban, yang pada dasarnya membaca semua byte output dari Interpreter PHP 46 00:02:06,350 --> 00:02:08,430 ke array besar. 47 00:02:08,430 --> 00:02:10,850 >> Bahwa beban fungsi yang sama juga digunakan untuk memuat 48 00:02:10,850 --> 00:02:15,200 ke dalam memori semua byte dari sebuah file seperti, Jiff, atau JPEG, atau dot HTML 49 00:02:15,200 --> 00:02:16,630 File, bahwa pengguna telah meminta. 50 00:02:16,630 --> 00:02:21,060 Jadi, Anda akan perlu menggunakan beberapa trik dan alat dari masalah set 4 dalam file IO, 51 00:02:21,060 --> 00:02:24,410 tetapi Anda harus menemukan bahwa relatif akrab dan dalam cara yang baik, mudah-mudahan, 52 00:02:24,410 --> 00:02:28,110 mengikat bersama-sama web lebih baru hal dengan yang lebih tua berkas IO hal. 53 00:02:28,110 --> 00:02:31,490 >> Akhirnya, dalam indeks fungsi, semua yang perlu Anda lakukan 54 00:02:31,490 --> 00:02:34,570 adalah untuk memutuskan apakah atau tidak ada ada beberapa file yang efektif 55 00:02:34,570 --> 00:02:40,430 disebut indeks dot HTML, atau indeks dot PHP, dalam direktori, yang jalan Anda 56 00:02:40,430 --> 00:02:41,220 adalah masa lalu. 57 00:02:41,220 --> 00:02:44,360 Terbalik ini berarti bahwa jika pengguna tidak meminta direktori, 58 00:02:44,360 --> 00:02:47,318 kita tidak hanya akan menunjukkan kepadanya atau nya isi direktori tersebut, 59 00:02:47,318 --> 00:02:51,342 kami akan benar-benar menunjukkan kepada mereka Indeks dot HTML, atau indeks dot PHP, secara default. 60 00:02:51,342 --> 00:02:54,300 Tapi itu akan diserahkan kepada Anda untuk mencari tahu, dengan menggunakan beberapa petunjuk 61 00:02:54,300 --> 00:02:56,350 dalam kode sumber, yang kita sudah diberikan Anda, 62 00:02:56,350 --> 00:02:59,880 bagaimana Anda benar-benar dapat memeriksa apakah file tertentu ada 63 00:02:59,880 --> 00:03:03,380 di direktori saat ini, sehingga Anda dapat kembali respon yang benar. 64 00:03:03,380 --> 00:03:05,800 >> Jadi pada akhirnya ada relatif sedikit byte 65 00:03:05,800 --> 00:03:09,155 bahwa Anda perlu mengambil dari Masalah mengatur untuk melaksanakan server 66 00:03:09,155 --> 00:03:10,210 fungsi lengkap. 67 00:03:10,210 --> 00:03:13,180 Tapi yang pasti pastikan Anda membungkus pikiran Anda sekitar sebanyak kode 68 00:03:13,180 --> 00:03:15,013 Anda bisa, mengambil kenyamanan yang Anda tidak 69 00:03:15,013 --> 00:03:18,160 perlu memahami semua tingkat kode jaringan terendah, semua 70 00:03:18,160 --> 00:03:19,834 dari file tingkat kode IO terendah. 71 00:03:19,834 --> 00:03:21,750 Benar-benar, apa yang kita lakukan dengan masalah set ini 72 00:03:21,750 --> 00:03:25,670 adalah sintesis beberapa masalah masa lalu set, memperkenalkan sedikit WebLogic, 73 00:03:25,670 --> 00:03:28,802 dan konsep jaringan, sehingga pada akhirnya Anda 74 00:03:28,802 --> 00:03:31,760 membangun sesuatu yang benar-benar cukup menarik, benar-benar sangat kuat, 75 00:03:31,760 --> 00:03:33,468 tapi masih menggunakan blok bangunan yang sama, 76 00:03:33,468 --> 00:03:36,310 bahwa kita telah menggunakan untuk beberapa waktu.