Gli HTTP Handler di ASP.NET

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.

Guide ASP.Net

Guida Windows Azure Code Snippets

Le migliori pratiche per far girare le applicazioni "in the cloud",...

Guida ASP.NET MVC Best Practices

Un workflow dettagliato e ricco di suggerimenti pratici per...

Guida ASP.NET Starter Kit

Un modo semplice per imparare ad utilizzare le tecnologie Microsoft...

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

20 Febbraio 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto