| Tecnologia di Internet | ||||||||||||||||||||||
|
||||||||||||||||||||||
| In Internet, e in generale quando si ha a che fare con architetture client-server, ricorrono spesso i termini client-side e server-side. Letteralmente significano rispettivamente dalla parte del client e dalla parte del server, nel senso di azioni o eventi che accadono sul client o sul server.
Per esempio, nel web, gli script JavaScript sono client-side perché vengono eseguiti nel browser (la parte client del web). Al contrario, gli script CGI sono server-side perché vengono eseguiti sul server. Gli applet Java possono essere sia server-side che client-side, secondo che vengano eseguiti sul server o sul client. In questa pagina ci occupiamo di quello che si può fare nel browser, cioè dei linguaggi e degli strumenti client-side. |
||||||||||||||||||||||
| Il web utilizza una architettura client-server e il browser è la parte client di tale architettura. La funzione principale del browser consiste nel richiedere, mediante un URL, un file HTML al server, e, una volta ricevuto il file, visualizzarlo, interpretando i tag HTML. Normalmente la pagina da visualizzare conterrà anche immagini GIF e JPEG. Il browser richiede anche queste immagini al server e le visualizza.
Nel caso più semplice di pagine statiche (cioè realizzate in precedenza e memorizzate nel server) il funzionamento è questo:
Il browser ha quindi i seguenti compiti
|
||||||||||||||||||||||
Non tutti i file in arrivo al browser sono HTML, GIF e JPEG. In realtà il browser richiede e riceve in continuazione anche file PDF, PostScript, AIFF, ZIP, SIT, MP3, MPEG e così via. Per ognuno di questi file lutente può prevedere un utilizzo diverso, che potrà essere
In quale modo il browser riesce a sapere che tipo di file gli viene spedito dal server e quale uso farne? Ogni sistema informatico ha un metodo per indicare, riconoscere e comunicare il tipo di un determinato file (per esempio se si tratta di un file di testo, di una immagine TIFF o di un file audio). Così, il sistema operativo Windows riconosce il tipo di file dal suffisso del nome (detto anche estensione). Se il nome di un file ha il suffisso .doc, Windows sa che si tratta di un file di testo creato con Word; se ha il suffisso .xls, Windows lo identifica come file di Excel. MacOS, il sistema operativo di Macintosh, usa una tecnica diversa e non identifica il file dal suo suffisso ma dalla sigla del tipo (type) e dalla sigla del programma creatore (creator), due informazioni memorizzate allinterno del file stesso. Per esempio un file Word ha tipo W8BN e creatore MSWD mentre un file Excel ha tipo XLS8 e creatore XCEL. Unix riconosce invece il file da alcuni caratteri posti all'inizio. |
||||||||||||||||||||||
| Tipo e creatore di un file MacOS possono essere esaminati e modificati con ResEdit e con GoLive.
Sopra un file Microsoft Word esaminato con ResEdit, sottoa un file Acrobat PDF esaminato con GoLive. |
|
|||||||||||||||||||||
| Su Internet, e in particolare su web, il tipo di file viene comunicato mediante unaltra tecnica, il cosiddetto metodo MIME. Le informazioni MIME sono informazioni generali (che comprendono, oltre al tipo MIME, anche altre proprietà del file) sviluppate inizialmente per le mail (MIME sta per Multipart Internet Mail Extension) e successivamente trasferite anche al web.
Possono essere inserite in ogni protocollo client-server che richiede la trasmissione di diversi tipi di dati. Tuttavia non tutti i protocolli le usano: per esempio FTP non trasmette informazioni sul tipo di file, spetta allutente il controllo sui file che trasmette e riceve. Il protocollo HTTP utilizza solo il tipo MIME e ignora le altre informazioni MIME. Linformazione MIME relativa al tipo di file sono due parole di tipo generale/specifico. Ecco alcuni esempi:
Quando un browser richiede un file al web server, questultimo utilizza il suffisso del file (se esiste, e/o tipo e creatore se il sistema operativo del server è MacOS) per determinare, con laiuto di una.tab, il tipo MIME del file da spedire. Questa indicazione viene trasmessa al browser assieme al file utilizzando il protocollo HTTP, che è predisposto per utilizzare i tipi MIME, ma non per utilizzare il resto delle informazioni MIME. Se il web server non è in grado di determinare il tipo del file (per esempio perché il file non ha suffisso, oppure perché la.tab non ha un riferimento per quel suffisso) utilizza un tipo default, solitamente text/html o text/plain. Dallaltra parte, il client, cioè il browser, ha a disposizione unaltra.tab di tipi MIME con laiuto della quale decide come utilizzare il file in arrivo. Le possibilità sono:
Per esempio, quando un browser Netscape Navigator richiede a WebStar (un web server di StarNine che gira su piattaforma Macintosh) il file melodia.aif, WebStar consulta la sua.tab dei suffissi (qui sotto), localizza il file melodia.aif, legge i dati e li spedisce al browser con il tipo MIME audio/x-aiff. |
||||||||||||||||||||||
| La mappa dei suffissi di WebStar. Al suffisso .aif corrisponde il tipo MIME audio/x-aiff. | ![]() |
|||||||||||||||||||||
| Il file arriva quindi a Netscape Navigator con il tipo MIME audio/x-aiff: questa informazione si può controllare in View > Page Info.
Netscape consulta la sua tabella dei tipi MIME dalla quale apprende che il file deve essere passato al plug-in QuickTime (altre possibilità: può essere passato ad una applicazione o salvato su disco; oppure si può chiedere allutente cosa desidera fare con questo file). A questo punto il file melodia.aif viene gestito dal plug-in indicato (QuickTime), che apre una finestra nel browser per il controllo del file (volume, avvio, stop, ecc.). |
||||||||||||||||||||||
| Le Preferenze di applicazione di Netscape Navigator 4.7 | ![]() |
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Si noti che la trasmissione del tipo MIME del file viene fatta da HTTP, quindi è necessario che la trasmissione avvenga con questo protocollo. Se il file viene aperto in locale, senza protocollo HTTP (cioè con un URL di tipo file), il meccanismo descritto non ha luogo, e per il riconoscimento del tipo di file viene utilizzato il meccanismo proprio del sistema operativo.
In poarticolare, le informazioni che il server deve avere per il tipo MIDI sono MIME type = audio/midi, audio/x-midi o application/x-midi Tuttavia, il tipo MIME si può anche inserire nella pagina web (type="audio/midi" nel tag EMBED). Se il browser non riconosce (cioè non ha nella.tab) il tipo MIME del file in arrivo, può fare due cose: o cerca di ricavare il tipo del file dal suffisso o da qualche altra caratteristica del file oppure avvia una azione di default (solitamente cercando di visualizzare il file come testo, il che dà luogo a una serie di strani caratteri nella finestra, se il file è binario). Informazioni online I tipi MIME sono definiti dalla comunità web, oppure da società come Microsoft o Apple. Non esiste una lista esaustiva dei tipi MIME in uso, ma un lungo elenco si può trovare in http://www.isi.edu/in-notes/iana/assignments/media-types/media-types.
|
||||||||||||||||||||||
| Una volta che il tipo del file è stato riconosciuto, viene anche determinato chi lo deve gestire. Se non è il browser né lutente, ci sono due possibilità: o viene gestito da un programma helper o da un plug-in.
I plug-in sono applicazioni che permettono di aprire la finestra di gestione del file allinterno della finestra del browser stesso. Lhelper è un programma esterno, che apre una propria finestra indipendente dal browser, il quale fornisce solo linput. Fino a qualche tempo fa, e in una certa misura ancor oggi, i browser si appoggiavano a programmi esterni per gestire i file che non riuscivano a trattare internamente. Per esempio, tipicamente un browser non è in grado di suonare un file audio che arriva da un web server. Invece, il browser sa che quando incontra un file audio deve lanciare (se disponibile nel disco locale, naturalmente) un programma separato, indipendente (un helper) che sia in grado di suonare il file audio, in una finestra separata. La tendenza attuale è invece quella di cercare di utilizzare il più possibile la stessa finestra del browser, per esempio con luso dei plug-in. |
||||||||||||||||||||||
|
I plug-in, disponibili per la prima volta in Netscape Navigator 2, costituiscono un modo per estendere le funzionalità di un browser senza doverlo modificare. I plug-in più comuni sono quelli che consentono al browser di suonare un file audio e di visualizzare un file video. I plug-in possono essere catalogati nelle seguenti categorie
ed esistono in varie versioni per i vari sistemi operativi. Per esempio Netscape Navigator (per Windows e Macintosh) gestisce i file audio mediante plug-in. Il plug-in di default di Navigator, LiveAudio, supporta questi formati audio
Microsoft Internet Explorer può gestire i file audio mediante plug-in o, per default, con il controllo ActiveMovie (basato sulla tecnologia ActiveX di Microsoft) incorporato in Internet Explorer dalla versione 3. ActiveMovie supporta i seguenti formati multimediali
Altri plug-in che possono essere usati per laudio (sia su Macintosh che su Windows)
E' possibile scrivere una routine JavaScript per determinare quali plug-in sono installati nel browser. Informazioni online |
||||||||||||||||||||||
|
||||||||||||||||||||||