This document was uploaded by user and they confirmed that they have the permission to share
it. If you are author or own the copyright of this book, please report to us by using this DMCA
report form. Report DMCA
Itziar Uranga Martín David Pablos González Jorge Martín Huelmo
Tareas previas a las de ASP •
Entender y explicar por medio de un ejemplo relación que existe entre http y las cookies:
la
“Al ser el protocolo HTTP incapaz de mantener información por sí mismo, para que se pueda conservar información entre una página vista y otra (como login de usuario, preferencias de colores, etc), ésta debe ser almacenada, ya sea en la URL de la página, en el propio servidor, o en una cookie en el ordenador del visitante. De esta forma, los usos más frecuentes de las cookies son: •
• •
Llevar el control de usuarios: cuando un usuario introduce su nombre de usuario y contraseña, se almacena una cookie para que no tenga que estar introduciéndolas para cada página del servidor. Sin embargo una cookie no identifica a una persona, sino a una combinación de computador y navegador. Ofrecer opciones de diseño (colores, fondos, etc) o de contenidos al visitante. Conseguir información sobre los hábitos de navegación del usuario, e intentos de spyware, por parte de agencias de publicidad y otros. Esto puede causar problemas de privacidad y es una de las razones por la que las cookie tienen sus detractores.”
www.wikipedia.org •
Desde la perspectiva de quien diseña e implementa un sitio Web: ¿Cómo se cookie?
consigue
que
el
cliente
almacene
una
Con la instrucción response se crea una cookie que se envía al cliente para que almacene la información Response.Cookies("Usuario")("nombre")="Felipe"
¿Cómo se consigue recuperar y tratar las cookies previamente almacenadas? En cada visita que el cliente haga a la página web, el servidor de la página se encargará de leer el contenido de la cookie. Este código es el que se encarga de recuperar el valor de la cookie: elNombre = Request.Cookies ("Usuario") ("nombre") www.asptutor.com
•
Explicar utilizando el lenguaje que se desee qué instrucciones tendría un script de servidor cuya ejecución conllevase la visualización en el cliente de las variables de entorno
Variables de entorno Tomcat
Variables de entorno Tomcat
AUTH_TYPE:
<% String var = request.getAuthType(); %>
<%=var %>
CONTENT_LENGTH:
<% var = String.valueOf(request.getContentLength()); %>
<%=var %>
CONTENT_TYPE:
<% var = request.getContentType(); %>
<%=var %>
DOCUMENT_ROOT:
<% var = getServletContext().getRealPath("/"); %>
<%=var %>
PATH_INFO:
<% var = request.getPathInfo(); %>
<%=var %>
PATH_TRANSLATED:
<% var = request.getPathTranslated(); %>
<%=var %>
QUERY_STRING:
<% var = request.getQueryString();%>
<%=var %>
REMOTE_ADDR:
<% var = request.getRemoteAddr(); %>
<%=var %>
REMOTE_HOST:
<% var = request.getRemoteHost(); %>
<%=var %>
REMOTE_USER:
<% var = request.getRemoteUser(); %>
<%=var %>
REQUEST_METHOD:
<% var = request.getMethod(); %>
<%=var %>
SCRIPT_NAME:
<% var = request.getServletPath(); %>
<%=var %>
SERVER_NAME:
<% var = request.getServerName(); %>
<%=var %>
SERVER_PORT:
<% var = String.valueOf(request.getServerPort()); %>
<%=var %>
SERVER_PROTOCOL:
<% var = request.getProtocol(); %>
<%=var %>
SERVER_SOFTWARE:
<% var = getServletContext().getServerInfo(); %>
<%=var %>
Tareas sobre ASP • Explicar brevemente la semántica y principales características de los siguientes objetos: • Request El objeto Request nos devuelve informaciones del usuario que han sido enviadas por medio de formularios, por URL o a partir de cookies. Nos informa también sobre el estado de algunas de las variables del sistema. Colección.FORM Mediante esta colección recuperaremos la información enviada desde un formulario con el método POST. La sintaxis es: valor = Request.Form("nombreDelCampo") Donde “nombreDelCampo” debe de coincidir con el valor de alguno de los campos Name del formulario. También se puede usar un número que representaría el lugar que ocupa el campo dentro del formulario. Colección.QueryString Mediante esta colección recuperamos la información enviada desde un formulario con el método QueryString, o bien, si el usuario ha introducido la información directamente en la barra de navegación. La sintaxis: valor = Request.QueryString("nombreDelCampo") Donde “nombreDelCampo” debe de coincidir con el valor de alguno de los campos Name del formulario. También se puede usar un número que representaría el lugar que ocupa el campo dentro del formulario. Colección.ServerVariables Esta colección nos permite acceder a los valores de la cabecera HTTP que se envían desde el cliente al servidor. Estos valores son solo de lectura y su sintaxis es: variable = Request.ServerVariables("nombreDeVariable") Colección.Params Se pueden pasar valores de una página a otra utilizando la colección Request.Params. Tenemos dos páginas y la primera página lo que hace es: System.Collections.Specialized.NameValueCollection myCol = Request.Params; string userName = Request.Params.Get("txtUserName"); Server.Transfer("SecondPage.aspx");
Y la segunda página se encargará de recibir los valores de la siguiente forma: string userName = Request.Params.Get("txtUserName"); Informacion extraida de: http://www.aulambra.com
•
Response
“El objeto Response es uno de los objetos predefinidos de ASP que nos va a servir para devolver al cliente una página web, para redireccionar una petición a otra página y para manejar la creación de cookies.” Propiedad Buffer: Si esta propiedad está a true (opción por defecto en ASP 3.0) indica al servidor que debe utilizar el buffer intermedio. Si está a false no lo utiliza. Por defecto esta a false, es decir, se vuel c a e l c o n t e n i d o d i r e c t a m e n t e e n pantalla. El código generado al procesar la página ASP se guarda en un buffer hasta que se termina de procesar, en ese instante el servidor se encarga de mandar el contenido de este buffer. Propiedad ContentType: Especifica el tipo de contenido Http para la respuesta. Si no se especifica ningún ContentType, el utilizado por defecto es texto/HTML. Por ejemplo un par de valores que puede adquirir son: <% Response.ContentType = "text/HTML" %> <% Response.ContentType = "image/GIF" %> Método End: Hace que el script ASP termine, y como consecuencia propicia que el buffer intermedio se vuelque sobre la pantalla. Método Redirect: Hace que el navegador redireccione al cliente a una URL diferente. Método Write: Es el método utilizado para devolver cualquier tipo de texto en una página web. Es decir podemos encontrar texto plano, etiquetas HTML, código Script... Información obtenida en los siguientes links: http://www.aulambra.com/ver2.asp?id=53&tipo= http://www.desarrolloweb.com/articulos/300.php
• Session El objeto Session almacena el estado a nivel de usuario. A cada usuario se le es asignado un objeto Session. Puesto que cada usuario tiene su propio objeto, su propio conjunto de datos puede ser mantenido. Se crea automáticamente para cada nuevo visitante del sitio Web y se destruye cuando termina su sesión. Información extraída de http://www.aspfacil.com/
• Application El objeto Application, en cambio, es único para todo el sitio Web. Al igual que con Session, podemos utilizarlo para guardar variables y datos que podemos recuperar desde nuestras páginas ASP pero, sin embargo, todos los visitantes comparten el mismo objeto Application. Si el objeto Session era una taquilla para cada uno, el objeto Application es el almacén que todos pueden utilizar. http://www.aspfacil.com
• ¿En qué objetos está definida la Colección CONTENTS? • ¿Para qué sirve? La colección Contents esta definida dentro del objeto Session. Esta colección Contents contiene todos los objetos almacenados como variables de sesión. La utilidad del objeto Session es la de almacenar información por cada usuario durante lo que dure su sesión. La sesión de un usuario comienza cuando el mismo pide una página web, y finaliza cuando la abandona. Se utiliza porque es necesario poder tener una misma información durante todas las páginas del sitio web en cuestión. Esa información necesaria se recoge en la colección Contents. http://www.aulambra.com/ver2.asp?id=174&tipo=#contents
• Global.asax • ¿Qué es para y para que se utiliza? “El archivo Global.asax, también conocido como el archivo de aplicación de ASP.NET, es un archivo opcional que contiene
código para responder a eventos del nivel de la aplicación y de la sesión provocados por ASP.NET o por módulos HTTP” http://msdn.microsoft.com/
• ¿Qué métodos incluir?
de
respuesta
a
eventos
puede
El archivo Global.asax puede tener métodos de inicio de aplicación, fin de aplicación, inicio de sesión, cierre de sesión, tratamiento de errores...