Gli HTTP Handler di ASP.NET

4 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.

Se vuoi aggiornamenti su Gli HTTP Handler di ASP.NET inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Gli HTTP Handler di ASP.NET

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy