1 00:00:00,000 --> 00:00:00,200 2 00:00:00,200 --> 00:00:02,280 >> SPEAKER 1: Va bene, e allora è che ti devi fare concretamente? 3 00:00:02,280 --> 00:00:04,140 Ebbene, risulta là del appena quattro funzioni 4 00:00:04,140 --> 00:00:06,390 che è necessario implementare funzionalità di cui è 5 00:00:06,390 --> 00:00:08,520 inerente al buon funzionamento del server web, 6 00:00:08,520 --> 00:00:10,720 ma le cui comportamento è molto stretto 7 00:00:10,720 --> 00:00:13,104 definito, in modo che solo fare più o meno una cosa. 8 00:00:13,104 --> 00:00:15,270 La prima cosa che si sta andando ad avere bisogno di fare è implementare, 9 00:00:15,270 --> 00:00:17,540 secondo le specifiche, la funzione Cerca. 10 00:00:17,540 --> 00:00:20,900 Questo è abbastanza semplice funzione Alla fine, che prende come argomento 11 00:00:20,900 --> 00:00:24,690 qualunque sia il percorso del file che l'utente vuole richiedere, 12 00:00:24,690 --> 00:00:28,310 ed è necessario rispondere con la tipo cosiddetto MIME o Content-type, 13 00:00:28,310 --> 00:00:29,200 di quel file. 14 00:00:29,200 --> 00:00:31,415 Ad esempio, se è un file come, ciao puntino 15 00:00:31,415 --> 00:00:37,470 Html si sta andando a rispondere con un MIME tipo di testo tra virgolette barra HTML. 16 00:00:37,470 --> 00:00:40,920 >> Oppure, se si tratta di una immagine, si potrebbe desiderare per rispondere con immagine puntino barra 17 00:00:40,920 --> 00:00:42,990 JIFF o immagine tagliano JPEG. 18 00:00:42,990 --> 00:00:46,280 Vedere le specifiche per i vari formati di file è necessario rilevare. 19 00:00:46,280 --> 00:00:49,760 Ma che realmente si riduce a prendere una guardare il percorso, che si è passato, 20 00:00:49,760 --> 00:00:52,870 e guardando il suo file estensione, gli ultimi caratteri 21 00:00:52,870 --> 00:00:54,297 dopo il punto finale o punto. 22 00:00:54,297 --> 00:00:57,130 Così lasceremo a voi con un po ' dei suggerimenti nel specifica 23 00:00:57,130 --> 00:01:00,170 di capire esattamente come trovare che puntino e l'estensione del file 24 00:01:00,170 --> 00:01:02,840 in modo da poter fare la mappatura da uno all'altro. 25 00:01:02,840 --> 00:01:04,395 >> Il prossimo è la funzione di analisi. 26 00:01:04,395 --> 00:01:06,270 Quindi questo è un po ' più coinvolti, in quanto 27 00:01:06,270 --> 00:01:08,590 è necessario prendere in quel argomento [incomprensibile], 28 00:01:08,590 --> 00:01:12,030 è iterato su di esso, il carattere per il personaggio, o corda per corda, 29 00:01:12,030 --> 00:01:14,660 al fine di assicurarsi che soddisfi esattamente 30 00:01:14,660 --> 00:01:19,155 la definizione formale di quel primo Richiesta linea, secondo le specifiche. 31 00:01:19,155 --> 00:01:23,930 E avete bisogno di caricare in assoluto percorso che sottostringa, che rappresenta 32 00:01:23,930 --> 00:01:26,550 qualcosa di simile, slash ciao puntino HTML. 33 00:01:26,550 --> 00:01:29,960 Nel frattempo, opzionalmente, dopo che percorso potrebbe essere un punto interrogativo 34 00:01:29,960 --> 00:01:32,240 e poi una stringa di query come, q è uguale a gatti, 35 00:01:32,240 --> 00:01:35,310 o q uguale a gatti e commerciale, e poi un altro paio valore della chiave. 36 00:01:35,310 --> 00:01:38,380 Quindi si sta andando ad avere bisogno di scavalcare quei personaggi, 37 00:01:38,380 --> 00:01:41,150 così, fino al primo spazio, al fine 38 00:01:41,150 --> 00:01:47,327 per creare una stringa che memorizza al suo interno la stringa di query stessa. 39 00:01:47,327 --> 00:01:49,410 Successivamente, si sta andando a implementare la funzione di caricamento. 40 00:01:49,410 --> 00:01:52,493 Così si scopre, se si guarda attraverso il codice sorgente, come le specifiche dirige, 41 00:01:52,493 --> 00:01:54,210 la funzione di carico viene utilizzata in due punti. 42 00:01:54,210 --> 00:01:57,420 E 'sia utilizzato per caricare il uscita dal PHP interprete. 43 00:01:57,420 --> 00:01:59,700 E abbiamo scritto tutti il codice di gestione PHP, 44 00:01:59,700 --> 00:02:01,840 ma ha bisogno di utilizzare una funzione chiamata 45 00:02:01,840 --> 00:02:06,350 carico, che legge essenzialmente tutto il byte di uscita dal Interprete di PHP 46 00:02:06,350 --> 00:02:08,430 in un grande array. 47 00:02:08,430 --> 00:02:10,850 >> Quella stessa funzione del carico è anche usato per caricare 48 00:02:10,850 --> 00:02:15,200 in memoria tutti i byte da un file come, un JIFF, o JPEG, o un punto HTML 49 00:02:15,200 --> 00:02:16,630 file che l'utente ha richiesto. 50 00:02:16,630 --> 00:02:21,060 Quindi sarà necessario utilizzare alcuni trucchi e attrezzi dal problema set 4 nel file di IO, 51 00:02:21,060 --> 00:02:24,410 ma si dovrebbe trovare che relativamente familiare e in un bel modo, si spera, 52 00:02:24,410 --> 00:02:28,110 di legare insieme il più recente web roba con il più vecchio del file IO roba. 53 00:02:28,110 --> 00:02:31,490 >> Infine, negli indici la funzione, tutto quello che dovete fare 54 00:02:31,490 --> 00:02:34,570 è quello di decidere se esista o meno esiste qualche file in modo efficace 55 00:02:34,570 --> 00:02:40,430 chiamato HTML indice di punti, o indice puntino PHP, all'interno della directory, il cui percorso si 56 00:02:40,430 --> 00:02:41,220 sono passato. 57 00:02:41,220 --> 00:02:44,360 Il vantaggio di questo significa che se l'utente fa richiesta di una directory, 58 00:02:44,360 --> 00:02:47,318 non stiamo solo andando a fargli vedere o suo il contenuto di tale directory, 59 00:02:47,318 --> 00:02:51,342 mostreremo letteralmente indice puntino HTML, o indice di punti di PHP, per impostazione predefinita. 60 00:02:51,342 --> 00:02:54,300 Ma che sta per essere lasciato a voi per capire, utilizzando alcuni dei suggerimenti 61 00:02:54,300 --> 00:02:56,350 nel codice sorgente, che abbiamo già dato, 62 00:02:56,350 --> 00:02:59,880 come si può effettivamente verificare se esiste un certo file 63 00:02:59,880 --> 00:03:03,380 nella directory corrente, in modo che è possibile restituire la risposta corretta. 64 00:03:03,380 --> 00:03:05,800 >> Così alla fine non c'è relativamente pochi byte 65 00:03:05,800 --> 00:03:09,155 che è necessario prendere dal problema impostato per implementare il server di 66 00:03:09,155 --> 00:03:10,210 funzionalità incomplete. 67 00:03:10,210 --> 00:03:13,180 Ma sicuramente assicuratevi di avvolgere la tua mente intorno come gran parte del codice 68 00:03:13,180 --> 00:03:15,013 come si può, prendendo comfort in che non si 69 00:03:15,013 --> 00:03:18,160 bisogno di capire tutte le più basso livello di codice di rete, tutto 70 00:03:18,160 --> 00:03:19,834 del file di livello di codice IO più basso. 71 00:03:19,834 --> 00:03:21,750 In realtà, quello che stiamo facendo con questo problema set 72 00:03:21,750 --> 00:03:25,670 è la sintesi degli ultimi problema set, introducendo un po 'di WebLogic, 73 00:03:25,670 --> 00:03:28,802 e concetti di rete, in modo che alla fine si 74 00:03:28,802 --> 00:03:31,760 costruire qualcosa che è davvero molto interessante, davvero molto potente, 75 00:03:31,760 --> 00:03:33,468 ma ancora utilizzando il stessi blocchi di costruzione, 76 00:03:33,468 --> 00:03:36,310 che abbiamo usato per qualche tempo.