di: Giuseppe Marchi 04 Aprile 2007
Gli HTTP Handler sono tra i meccanismi alla base dell'architettura di ASP.NET, in quanto si occupano di elaborare le risposte a specifiche richieste HTTP e fornirle, secondo la forma più consona, al richiedente.
Esistono, infatti, handler predefiniti per gestire richieste a pagine ASP.NET (.aspx) e a web service (.asmx), altri invece per bloccare la visualizzazione di alcuni file speciali (come il file web.config) o per abilitate il meccanismo del tracing. Oltre a questi, l'alto grado di estensibilità di ASP.NET ci permette di creare HTTP Handler personalizzati per ogni tipo di richiesta che vogliamo gestire in maniera differente dalle altre.
In poche parole, anche voi, senza saperlo, avete sempre utilizzato degli HTTP Handler nelle vostre applicazioni, in quanto ogni richiesta effettuata alle risorse del vostro sito, viene gestita con il suo specifico handler.
Tecnicamente però, un HTTP Handler non è altro che una classe .NET che implementa l'interfaccia IHttpHandler (reperibile sotto il namespace System.Web). Tale interfaccia espone un metodo utile a processare la richiesta HTTP in entrata (il metodo ProcessRequest) e una proprietà, di tipo boolean, utile a decidere se l'istanza dell'HTTP Handler corrente può essere utilizzata o meno da altre richieste (la proprietà IsReusable). Chiaramente, è proprio attraverso l'implementazione di questa interfaccia che noi possiamo sviluppare gli handler utili a svolgere le funzionalità custom di cui abbiamo bisogno.
Per visualizzare gli handler predefiniti e per registrare quelli creati da noi, è presente un'apposita sezione all'interno dello schema dei file di configurazione validi per le applicazioni web basate sul .NET Framework. Questa è rappresentata dall'elemento <httpHandlers />, figlio diretto di <system.web />.
L'elenco degli handler di default è visibile all'interno del web.config del server, raggiungibile seguendo il percorso C:\WINDOWS\Microsoft.NET\Framework\Vx.x.xxxxx\CONFIG; questo file contiene le configurazioni di base per tutti i siti gestiti da IIS ed la dichiarazione degli handler di default è posta a questo livello, quindi, perché possa interessare tutte le applicazioni web installate sul server.
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200820 Febbraio 2012 a Milano |
|
Nessun corso previsto |