ASPcenter.net

3 febbraio 2010

I cookie in ASP

I cookie (letteralmente “biscotti”) sono file di testo temporanei che vengono memorizzati nella cache del computer del client che si connette ad una pagina ASP che ne fa uso per i suoi processi interni.

I cookie sono stati a lungo al centro delle polemiche, accusati di mirare alla privacy degli utenti. Le nuove leggi e l’avanzare delle tecnologie hanno reso questo strumento più sicuro ed affidabile, facendolo tornare al suo ruolo originario, ovvero memorizzare informazioni per facilitare e velocizzare la navigazione dell’utente.


I cookie possono essere disabilitati dal browser attraverso il pannello delle proprietà. Conviene quindi prima accertarsi che i cookie siano abilitati sul browser prima di eseguire degli script che ne fanno uso:

<%
    Dim biscotti
    biscotti = Request.ServerVariables("HTTP_COOKIE")
    If biscotti = "" Then
        Response.Write "ATTENZIONE: devi abilitare i cookie!"
    Else
        ' Eseguiamo gli script che fanno uso dei cookie
    End If
%>

I cookie possono essere di due tipi: di sessione e permanenti. I primi hanno durata volatile e muoiono al termine della sessione del browser (chiudendo il browser) mentre i secondi scadono, e vengono cancellati dalla cache, nella data impostata in fase di creazione.

Il seguente codice crea un cookie di sessione

<%
    Response.Cookies("nome") = "Luca"
%>

Il seguente codice, invece, crea un cookie permanente che scadrà a Natalle dell’anno 2050

<%
    Response.Cookies("nome") = "Luca"
    Response.Cookies("nome").Expires = #December 25, 2050#
%>

Per recuperare un cookie si utilizz il seguente codice

<%
    Response.Cookies("nome") = "Luca"
    Response.Write Request.Cookies("nome")
%>

che stampa a video il valore del cookie.

Possiamo adesso utilizzare i cookie, ad esempio, per impostare una condizione in base alla quale eseguire o meno una routine

<%
    If Request.Cookies("nome") = "" Then
        ' Operazione da eseguire se il cookie non è attivo
        Response.Cookies("nome") = "OK"
    End If
%>

Dopo aver eseguito la routine valorizzo il cookie, in maniera tale che verrà eseguito una tantum in una determinata sessione.

Nessun commento »

Non c'è ancora nessun commento.

RSS feed dei commenti a questo articolo. TrackBack URL

Lascia un commento

ASPcenter.net è il blog italiano su ASP, ASP.Net, VB.Net, C# e Visual Studio - Funziona con WordPress