Oggetto Server

Come già detto nel paragrafo di presentazione generale degli oggetti built-in, l'oggetto Server, con i suoi quattro metodi ed una sola proprietà, fornisce alcune risposte dal server, spesso di estrema utilità per la realizzazione di applicazioni Web basate sul linguaggio Asp.

Esaminiamo dunque proprietà e metodi di questo oggetto.


Proprietà

La sola proprietà di cui dispone l'oggetto built-in Server è ScriptTimeout che specifica, in secondi, la durata di esecuzione dello script, oltre il cui tempo, lo script cessa di funzionare fino ad una nuova richiesta http lanciata al server dal browser.

La stringa

Server.ScriptTimeout = 300;

impegna il server ad eseguire lo script in soli cinque secondi (5 X 60 = 300), allo scadere del tempo stabilito il server terminerà di processare la pagina Asp in questione.


Metodi

Come già detto in precedenza, Server dispone di quattro metodi, esaminiamoli in ordine.

Il metodo CreateObject serve a generare una nuova istanza di una classe, in genere si tratta di componenti ActiveX (che esamineremo più avanti nel corso del manuale), ecco i principali:

MSWC.AdRotator - classe utilizzata per generare circuiti di rotazione banner

MSWC.BrowserType - classe che fornisce una serie di informazioni sul browser dell'utente, utile per creare sistemi di statistiche

Scripting.FileSystemObject - classe che consente di interagire con file e cartelle direttamente sul server

ADODB.Connection - classe che offre connettività ad una fonte di dati ADO (un database)

Quest'ultimo è sicuramente il più sfruttato, ipotizziamo la creazione di una connessione ad un database, dichiareremo una nuova classe ADODB.Connection, vediamo come:

var MiaConnessione = Server.CreateObject("ADODB.Connection");

Il secondo metodo dell'oggetto Server è HTMLEncode consente di applicare la codifica Html ad una stringa; questa tecnica è molto sfruttata per evitare il replace dei caratteri < e > durante la registrazione di un modulo, per evitare che, eventuali Tag Html inseriti, vengano interpretati come tali dal browser, rischiando di confondere notevolmente la struttura della pagina.

Ad esempio, la stringa

Response.Write(Server.HTMLEncode("<i>Hello World!</i>"));

non restituirà Hello World!, bensì &lt;i&gt;Hello World!&lt;/i&gt; nel codice, quindi <i>Hello World!</i> a video.

Il metodo MapPath serve a localizzare la un file con cui stiamo lavorando, sia che si tratti di un file di testo, di un file Xml, di un database ecc...
Riprendiamo l'esempio della connessione al database, nella creazione della stringa di connessione al file del DBMS che utilizziamo, dobbiamo specificare la posizione del file stesso sul server: MapPath ci permette di specificare il percorso relativo partendo dal file che lo richiama, piuttosto che il percorso assoluto.

Ad esempio, la stringa

Server.MapPath("database.mdb"));

permette di evitare di specificare un indirizzo del tipo

http://www.miosito.it/cartella/database.mdb
Ultimo metodo dell'oggetto Server, forse il meno utilizzato, è URLEncode, che aggiunge ad un'URL la sua codifica naturale: se, ad esempio, un file è stato nominato con degli spazi all'interno, come mio file.asp, URLEncode è in grado di aggiungere i caratteri %20 per unire le parole separate, restituendo mio%20file.asp.

Autore: Luca Ruggiero