220 likes | 351 Views
OBJETO REQUEST. El objeto Request. Por qué el objeto request Funcionamiento Colecciones: Transferencia de variables por URL Transferencia de variables por formulario Cookies ClientCertificate(clave) ServerVariables Propiedades: TotalBytes Métodos BinaryRead. El objeto Request.
E N D
El objeto Request • Por qué el objeto request • Funcionamiento • Colecciones: • Transferencia de variables por URL • Transferencia de variables por formulario • Cookies • ClientCertificate(clave) • ServerVariables • Propiedades: • TotalBytes • Métodos • BinaryRead
El objeto Request POR QUÉ EL OBJETO REQUEST • El objeto request nos ayuda en el envío de información al servidor, la cual ha sido introducida por el usuario desde diferentes aplicaciones. • El usuario interacciona con la página por medio de formularios cuyos campos han de ser procesados para poder dar una respuesta. • Algunos eventos también son tratados por el objeto Request con el envío de información a otras páginas ASP, que se valen de dicha información para la carga de unos datos u otros. • Este tipo de aspectos interactivos pueden ser gestionados a partir del objeto Request
El objeto Request POR QUÉ EL OBJETO REQUEST • Por tanto y para resumir podemos decir que con el objeto Request el usuario interactúa con la web según el comportamiento que tenga con ella. Desde introducción de datos, hasta la navegabilidad.
El objeto Request FUNCIONAMIENTO • El objeto Request nos puede informar de algunas variables del sistema como pueden ser la lengua utilizada por el navegador, la IP del cliente,… • También el objeto Request nos puede devolver información del usuario que puede haber sido enviada por medio de diversas colecciones. • Las mas típicas son: • Form • Querystring • Cookies • ClienteCertificate • ServerVariables
El objeto Request Colecciones Transferencia de variables por URL Transferencia de variables por formulario Cookies ClientCertificate(clave) ServerVariables
El objeto Request Transferencia de variables por URL • Para pasar las variables de una página a otra lo podemos hacer introduciendo dicha variable en la dirección URL de la página destino dentro del enlace hipertexto. • La sintaxis sería la siguiente: <ahref="destino.asp?var1=valor1&var2=valor2&.."></a> • Para recoger la variable en la página destino lo hacemos por medio del método Querystring del objeto Request Request.querystring("variable1")
El objeto Request Transferencia variables por URL • Un ejemplo muy claro es el que se muestra a continuación: • Tenemos un calendario y según al mes que nos mostrará una cabecera u otra. • Ejemplo calendario • El código a utilizar sería: • Para enviar los datos a la otra página ASP • <a href= "mes.asp?mes=Enero"> • Para recogerlos: • mes=Request.QueryString("mes")
El objeto Request Transferencia variables por formulario • El proceso es similar al explicado para las URL´s. • Primeramente, presentamos una primera página con el formulario a rellenar y las variables son recogidas en una segunda página que las procesa.
El objeto Request Transferencia variables por formulario • El siguiente ejemplo muestra la recogida de datos y posterior paso de los mismos • Ejemplo2 • El código es sencillo: <FORM METHOD="POST" ACTION="destino2.asp"> Nombre<br><INPUT TYPE="TEXT" NAME="nombre"><br> Apellidos<br><INPUT TYPE="TEXT" NAME="apellidos"><br> • La recogida sería: Variable nombre: <%=Request.Form("nombre")%><br> Variable apellidos <%=Request.Form(“apellidos”)%>
El objeto Request Cookies • Las cookies son el mecanismo que nos permite guardar información relativa a un usuario a lo largo de sus distintos accesos a nuestras páginas. • ASP implementa la posibilidad de usar cookies para crear o destruir información que se almacena en los equipos de los clientes. • Las cookies se transmiten en las cabeceras cuando se realiza la comunicación http y es el navegador el encargado de almacenarlas.
El objeto Request Cookies • Las cookies se implementan como una colección y se usan mediante los objetos integrados Request y Response antes mencionados • Sintaxis: • Response.Cookies(cookie)[(clave)|.atributo] = valor • Request.Cookies(cookie)(clave) • Ejemplos • Enviar una cookie simple • <% Response.cookies("color")="morado" %> • Recuperar el valor de esa cookie • <% ColorFavorito=Request.cookies("color")%>
El objeto Request ClientCertificate (clave) • Esta colección tiene utilidad si estamos escribiendo una aplicación que utiliza el protocolo Secure Socket Layers (SSL). • Este protocolo, que da una mayor seguridad en las transacciones electrónicas, se invoca con el prefijo https en lugar del típico http • Está basado en el envío de certificados electrónicos del servidor al cliente para asegurar la identidad del mismo.
El objeto Request ClientCertificate (clave) • El argumento clave es un string (cadena de texto) que especifica el nombre del item que se desea recibir. • Dicha cadena de texto puede contener los siguientes campos • Certificate Conteniene el certificado completo. Se recibe en binario. • SerialNumber Contiene el número de serie del certificado. • Subject Información sobre el sujeto certificado. • Issuer Información sobre el emisor del certificado. • ValidFrom Fecha desde la que es válido el certificado. • ValidUntil Fecha de expiración del certificado. • Flags • ceCertPresent Indica que el certificado se recibe de un cliente conocido. • ceUnrecognizedlssuer Indica que el certificado se recibe de un cliente desconocido Ejemplo
El objeto Request ServerVariables • El objeto Request nos da acceso a otras informaciones relativas al cliente y el servidor las cuales pueden resultar de una gran utilidad. • Estas informaciones son almacenadas como variables las cuales son agrupadas en una colección llamada ServerVariables.
El objeto Request ServerVariables • Algunas de estas variables de servidor son: • HTTP_ACCEPT_LANGUAGE Nos informa de la lengua preferida por el navegador • HTTP_USER_AGENT Indica cuál es el navegador utilizado. • PATH_TRANSLATED Nos devuelve el path físico del disco duro del servidor en el que se encuentra nuestro script • SERVER_SOFTWARE Nos dice qué tipo de software utiliza el servidor • LOCAL_ADDR Nos devuelve la dirección IP. • PATH_INFO nos informa de la ruta (path) del servidor • SERVER_NAME informa del servidor que se esta usando
El objeto Request ServerVariables • Para visualizar en pantalla alguna de estas variables, debemos escribir algo como: • Response.write request.servervariables("nombre de la variable") • Para sacar toda la información de la colección: • <% For Each elemento in Request.ServerVariablesResponse.Write elemento&" : "&Request.ServerVariables(elemento)& "<br>"Next %> • Podemos ver la ejecución del anterior código en el siguiente enlace.ejemplo
El objeto Request Propiedades TotalBytes
El objeto Request TotalBytes • Esta propiedad, de solo lectura, indica el número total de bytes enviados por el cliente al servidor en el cuerpo de la llamada HTTP. • Uso: <% Dim CuantosCuantos = Request.TotalBytesResponse.Write("Se han recibido = " & Cuantos & " bytes")%> Ejemplo
El objeto Request Métodos BinaryRead(count)
El objeto Request Método: BinaryRead(count) • Este método recupera los datos que han sido enviados al servidor desde el cliente formando parte de un request HTTP POST (por ejemplo, con un formulario). • Antes de que el método sea ejecutado, el argumento Count contiene el número de bytes que tienen que ser leídos (mediante la propiedad TotalBytes ) • Después de la ejecución contiene el actual número de bytes leídos. • Se utiliza poco, y su principal uso es cuando se envía (upload) un fichero, para comprobar que llegó completo. texto = Request.BinaryRead(1024)