Asp: Guía de aplicación de cookies, código detallado y tutoriales
Autor:Eve Cole
Fecha de actualización:2009-06-24 17:28:30
De hecho, en el desarrollo web, una cookie es solo un archivo de texto cuando un usuario visita un sitio, se almacena en la computadora utilizada por el usuario y se guarda cierta información en él cuando el usuario vuelve a visitar el sitio en el futuro. , la web puede extraer esta información.
Aunque las cookies pueden no parecer interesantes en este momento, ¡puedes hacer muchas cosas significativas con ellas! Por ejemplo: puede colocar una encuesta en su sitio, preguntando a los visitantes cuáles son sus colores y fuentes favoritos y luego personalizar la interfaz web del usuario en función de estos. Además, también puede guardar la contraseña de inicio de sesión del visitante, de modo que cuando el visitante visite el sitio nuevamente, no tenga que ingresar una contraseña para iniciar sesión.
Por supuesto, las cookies también tienen algunas desventajas. En primer lugar, dado que la función de las cookies se puede programar para lograr algunas malas intenciones, la mayoría de los navegadores tienen configuraciones de seguridad en las que se puede configurar si se permiten o aceptan cookies, por lo que no hay garantía de que se puedan utilizar cookies en cualquier momento. Además, los visitantes pueden eliminar intencionalmente o no
galletas. Cuando la máquina del visitante encuentra una "pantalla azul" de falla, o después de reformatear el disco duro o instalar el sistema, todas las cookies guardadas anteriormente se perderán. Por último, algunos de los primeros navegadores no admiten cookies.
¿Qué puedes hacer con las cookies?
Hay 2 formas básicas de utilizar cookies:
1. Escriba cookies en la computadora del visitante (use el comando RESPUESTA)
2. Recuperar cookies de la computadora del visitante (use el comando SOLICITAR)
Sintaxis básica para crear cookies
Respuesta.Cookies("NombreCookie")=valor
La ejecución del siguiente código creará una cookie en la computadora del visitante con nombre=VisitorName y valor=Ken
Response.Cookies("NombreVisitante")="Ken"
La ejecución del siguiente código creará una cookie en la computadora del visitante, con nombre = VisitorName y valor = el valor de UserName en el formulario.
Response.Cookies("Nombre del visitante")=Request.Form("Nombre de usuario")
Sintaxis básica para leer cookies
Solicitud.Cookies ("Nombre de la cookie")
El valor de la Solicitud se puede tratar como una variable. La ejecución del siguiente código recuperará el valor de la cookie denominado KensCookie y lo almacenará en la variable MyVar:
MiVar=Solicitud.Cookies("KensCookie")
La ejecución del siguiente código determinará si el valor de la cookie denominada KensCookie es "Sí":
Si Request.Cookies("KensCookie")="Sí", entonces
Cookies ricas en funciones
Puede ampliar el código anterior para convertirlo en el valor de la subclave de cookie (CookieSubName), el código es el siguiente:
Response.Cookies("NombreVisitante")("Nombre")="Ken"
Response.Cookies("Nombre del visitante")("Apellido")="Baumbach"
Antes de explicar los ejemplos, analicemos dos conceptos finales: convención de comandos y tiempo de caducidad de uso.
convención de nomenclatura
Al igual que nombrar otras variables, nombrar las cookies de forma adecuada y única le ayudará a utilizarlas de forma coherente en su programa. Puedes utilizar 1 o 2 de los siguientes
El atributo de cookie nombra la variable de cookie:
Atributo de dominio (Dominio): El atributo de dominio indica desde qué sitio web se genera o lee la cookie. De forma predeterminada, el atributo de dominio de la cookie se establece en el sitio web que la generó, pero también puede cambiarlo según sea necesario. El código relevante es el siguiente: Response.Cookies("CookieName").Domain = " www.mydomain.com "
Atributo de ruta (Path): el atributo de ruta puede implementar más requisitos de seguridad. Al establecer la ruta precisa en el sitio web, puede limitar el alcance del uso de cookies. Por ejemplo:
Response.Cookies("NombreCookie").Path = "/maindir/subdir/path"
Usar tiempo de vencimiento
Normalmente, una cookie deja de existir cuando se cierra el navegador. Pero muchas veces, como en el ejemplo del sitio web que se analiza a continuación, queremos guardar cookies en la computadora del visitante durante un período de tiempo más largo. Afortunadamente, existe una manera de lograrlo. El siguiente código puede establecer el tiempo de vencimiento de las cookies en 2010.
1 de enero:
Response.Cookies("CookieName").Expires=#01 de enero de 2010#
La ejecución del siguiente código establecerá el tiempo de vencimiento de la cookie en "tiempo de creación de la cookie + 365 días":
Respuesta.Cookies("NombreCookie")=Fecha+365
Ejemplos prácticos de uso de cookies (muy interesantes)
Ahora hablemos de ejemplos prácticos. Supongamos que desea realizar una encuesta. Todos deben completar la información cuando visitan el sitio por primera vez, pero cuando vuelvan a visitarlo en el futuro, no es necesario que lo vuelvan a hacer. Utilizando cookies, puedes solucionar este problema de forma muy satisfactoria sin necesidad de utilizar una base de datos.
< %@ IDIOMA="VBSCRIPT" % >
<%
Encuesta=Solicitud.Cookies("KensSurvey")
Si Encuesta="" entonces
Respuesta.Cookies("KensSurvey")="x"
Response.Cookies("KensSurvey").Expires=#01 de enero de 2010#
Respuesta.Redireccionamiento "encuesta.asp"
Demás
'resto de la página
terminar si
%>
Bien, comencemos desde cero y analicemos el código anterior.
Primero, configure inicialmente la página y lea el valor de la cookie denominada KensSurvey:
< %@ IDIOMA="VBSCRIPT" % >
<%
Encuesta=Solicitud.Cookies("KensSurvey")
Luego, determine si el valor de la cookie ya existe:
Si Encuesta="" entonces
Si no existe, la cookie se crea y configura, y la página se redirige a Survey.asp. La próxima vez que visite, debido a que el valor de la cookie existe, no irá a
página encuesta.asp.
Respuesta.Cookies("KensSurvey")="x"
Response.Cookies("KensSurvey").Expires=#01 de enero de 2010#
Respuesta.Redireccionamiento "encuesta.asp"
Si la cookie ya existe, el visitante ejecutará el código restante en la página:
'resto de la página
terminar si
%>
Ejemplo 2
Aquí hay otro ejemplo simple: muestre un mensaje de bienvenida a los visitantes cuando visiten un sitio por primera vez. El código es el siguiente:
< %@ IDIOMA="VBSCRIPT" % >
<%
NombreDeSolicitud = Solicitud.Form("Nombre")
RequestLeaveMeAlone = Solicitud.Form("LeaveMeAlone")
Si RequestName < >"" o RequestLeaveMeAlone < >"" entonces
Response.Cookies("MySiteVisitorName") = NombreDeSolicitud
Response.Cookies("MySiteVisitorName").Expires = #01 de enero de 2010#
Response.Cookies("MiSitioDejarMeAlone") = SolicitarDejarMeAlone
Response.Cookies("MySiteLeaveMeAlone").Expires = #01 de enero de 2010#
terminar si
Nombre del visitante = solicitud.cookies ("Nombre del visitante de mi sitio")
LeaveMeAlone = request.cookies("MiSitioLeaveMeAlone")
Si VisitorName ="" y LeaveMeAlone ="" entonces
%>
< HTML > < CABEZA > </ /CABEZA >
< cuerpo bgcolor="#ccffff" text="negro" enlace="azul marino" vlink="púrpura" >
< DIV ALIGN="CENTRO" >
<formulario acción="index.asp" método="POST" >
< H2 >Seamos amigos</H2 >
¿Cuál es tu nombre? (Déjalo en blanco y presiona el botón Enviar si no quieres que lo hagamos).
saber)?
< tipo de entrada="texto" nombre="nombre" >< BR >< BR >
< tipo de entrada="oculto" nombre="LeaveMeAlone" valor="x" >
< tipo de entrada="enviar" valor="Enviar" >
</ /FORMULARIO >
< /DIV >
< /CUERPO >
<%
terminar si
Si VisitorName < > "" entonces
Response.write "¡Hola, " & VisitorName & "! ¡Espero que estés teniendo un gran día!"
terminar si
'resto de la página
%>
Bien, ahora echemos un vistazo a lo que hace la implementación del código anterior. Primero, configure la página. Luego, verifique la variable de formulario (en la misma página). Si la variable de formulario existe, cree la cookie y establezca el tiempo de vencimiento.
< %@ IDIOMA="VBSCRIPT" % >
<%
NombreDeSolicitud = Solicitud.Form("Nombre")
RequestLeaveMeAlone = Solicitud.Form("LeaveMeAlone")
Si RequestName < >"" o RequestLeaveMeAlone < >"" entonces
Response.Cookies("MySiteVisitorName") = NombreDeSolicitud
Response.Cookies("MySiteVisitorName").Expires = #01 de enero de 2010#
Response.Cookies("MiSitioDejarMeAlone") = SolicitarDejarMeAlone
Response.Cookies("MySiteLeaveMeAlone").Expires = #01 de enero de 2010#
terminar si
A continuación, lea la cookie:
Nombre del visitante = request.cookies ("Nombre del visitante de mi sitio")
LeaveMeAlone = request.cookies("MiSitioLeaveMeAlone")
Si la cookie no existe en la computadora del visitante, cree un formulario solicitando la información relevante:
Si VisitorName ="" y LeaveMeAlone ="" entonces
%>
<HTML>
<CABEZA>
< /CABEZA >
< cuerpo bgcolor="#ccffff" text="negro" enlace="azul marino" vlink="púrpura" >
< DIV ALIGN="CENTRO" >
<formulario acción="index.asp" método="POST" >
< H2 >Seamos amigos</H2 >
¿Cuál es tu nombre? (Déjalo en blanco y presiona el botón Enviar si no quieres que lo hagamos).
saber)?
< tipo de entrada="texto" nombre="nombre" >< br >< br >
< tipo de entrada="oculto" nombre="LeaveMeAlone" valor="x" >
< tipo de entrada="enviar" valor="Enviar" >
</ /FORMULARIO >
< /DIV >
< /CUERPO >
<%
terminar si
Si la cookie ya existe y el nombre de usuario existe, muestre una pantalla de bienvenida al visitante y ejecute el resto del código.
Si VisitorName < > "" entonces
Response.write "¡Hola, " & VisitorName & "! ¡Espero que estés teniendo un gran día!"
terminar si
'resto de la página
%>
Aunque el ejemplo anterior es simple, a partir de él se pueden ampliar muchas aplicaciones creativas. Puede agregar muchas funciones a sus formularios para personalizar su sitio web.
También puede permitir que los visitantes personalicen los colores, las fuentes y otros elementos web de su sitio. Si es posible, puede preguntarle al visitante su cumpleaños y cuando el visitante lo visite ese día, puede mostrarle un mensaje de "Feliz cumpleaños".
Como puede ver, la escalabilidad de las cookies es infinita y este artículo es sólo un punto de partida.