11. Objeto Response

Tal y como se ha visto, el objeto Request gestiona todo lo relativo a entrada de datos al script por parte del usuario (formularios), provenientes de otra URL, del propio servidor o del browser.

Nos queda pues por explicar cómo el script puede "responder" a estos estímulos, es decir, cómo, después de procesar los debidamente los datos, podemos imprimir estos en pantalla, inscribirlos en las cookies o enviar al internauta a una u otra pagina. En definitiva, queda por definir la forma en la que ASP regula el contenido que es enviado al navegador.

Esta función es tomada en cargo por el objeto Response el cual ha sido ligeramente mencionado en capítulos precedentes concretamente en asociación al método Write.

En efecto, sentencias del tipo:

<%Response.Write "Una cadena de texto"%>

o bien,

<%Response.Write variable%>

Tienen como cometido imprimir en el documento HTML generado un mensaje o valor de variable. Este método es tan comúnmente utilizado que existe una abreviación del mismo de manera a facilitar su escritura:

<% = variable %> es análogo a <%response.write variable%>

Es importante precisar el hecho que imprimir en el documento HTML no significa necesariamente visualizar en pantalla ya que podríamos servirnos de estas etiquetas para crear determinadas etiquetas HTML. He aquí un ejemplo de lo que se pretende decir:

<% path="http://www.misitio.com/graficos/imagen.gif" %>

<img src="<% =path %>">

Este fragmento de script nos generaría un código HTML que sería recibido en el
navegador del siguiente modo:

<img src="“>http://www.misitio.com/graficos/imagen.gif">

Otro elemento interesante de este objeto Response es el método Redirect. Este método nos permite el enviar automáticamente al internauta a una página que nosotros decidamos.

Esta función, a todas luces práctica, puede ser empleada en scripts en los que enviamos al visitante de nuestro sitio a una u otra página en función del navegador que utiliza o la lengua que prefiere. También es muy útil para realizar páginas "escondidas" que realizan una determinada función sin mostrar ni texto ni imágenes y nos envían a continuación a otra página que es en
realidad la que nosotros recibimos en el navegador.

Aquí se puede ver una secuencia de script que nos permitiría usar este método para el caso en el que tengamos páginas diferentes para distintas versiones de navegadores. En ella emplearemos un objeto que nos debe parecer familiar ya que lo acabamos de ver (Request.ServerVariables):

<%

tipo_navegador = Request.ServerVariables("HTTP_USER_AGENT")

If Instr(1, tipo_navegador, "MSIE 3", 1) <> 0 then

Response.Redirect "MSIE3.asp"

ElseIf Instr(1, tipo_navegador, "MSIE 4", 1) <> 0 then

Response.Redirect "MSIE4.asp"

ElseIf Instr(1, tipo_navegador, "MSIE 5", 1) <> 0 then

Response.Redirect "MSIE5.asp"

ElseIf Instr(1, tipo_navegador, "Mozilla/4", 1) <> 0 then

Response.Redirect "Netscape4.asp"

Else

Response.Redirect "cualquiera.asp"

%>

Por supuesto, acompañando este script, debemos tener los correspondientes archivos MSIE3.asp, MSIE4.asp, MSIE5.asp… Cada uno de ellos con las particularidades necesarias para la buena visualización de nuestra página en tales navegadores.

Indaya.com – http://www.gnu.org/copyleft/fdl.es.html