Professional Documents
Culture Documents
NET
1. Transacciones HTTP.
HTTP es el mecanismo de comunicación por el cual los navegadores Web “hablan” con los
sitios Web.
En su concepción original, HTTP fue concebido solamente para enlazar documentos sin
considerar las interfases de usuario basadas en Web, las cuales son un requerimiento básico
de los sitios Web modernos. Las primeras versiones de HTTP soportaban solamente
transferencia de flujos de texto y no soportaban ningún otro tipo de transferencia de datos.
La primera especificación formal para HTTP se encuentra en la versión 1.0 y fue publicada a
mediados de 1990, y agregó soporte para mensajes más complejos que un simple protocolo de
transferencia de texto. HTTP creció para soportar diferentes medios (especificados por las
Extensiones de Correo de Internet de Propósitos Múltiples – Multipurpose Internet Mail
Extensions – MIME). La versión actual de HTTP es 1.1.
Normalmente la respuesta del servidor llega como un flujo de texto marcado con etiquetas
HTML.
Solicitud Solicitud
Respuesta Respuesta
Como un protocolo de conexión, HTTP es formado por varios comandos básicos. Los más
importantes que estudiaremos son:
GET: recupera la información identificada por el URL especificado por la solicitud.
HEAD: es igual que GET pero solo devuelve cabeceras HTTP sin cuerpo de documento.
POST: efectúa una solicitud al servidor, que puede causar efectos secundarios, como enviar
información al servidor para que sea procesada.
La mayoría de contactos iniciales a una página se hacen con el comando GET, y comúnmente
se manejan las interacciones posteriores con el comando POST.
Sin embargo, esto es una página estática y no realiza ninguna acción, a pesar de contener un
combo box y un botón. Para que una página sea dinámica, el servidor que se encuentra en el
otro extremo necesita soportar contenido dinámico.
3. Contenido dinámico.
Los primeros sitios Web fueron construidos principalmente usando páginas HTML estáticas, lo
cual permitía navegar hacia una página y leer el documento ahí alojado. Si bien en un principio
fue algo sorprendente, HTML eventualmente evolucionó para ser capaz de mucho más que
simplemente dar formato a textos.
HTML incluye las etiquetas <form> y </form> para notificar al navegador que una sección de
HTML incluye etiquetas representando controles con los cuales el usuario interactuará para
eventualmente devolver información al servidor. Así es como se especifica en un documento
Web que manejará entradas efectuadas por el usuario final y no solo salida de información. El
contenido de la forma, lo cual es la data contenida en los controles de entrada, será enviado al
servidor para su procesamiento. Esta es la razón por la cual el caso de uso típico de un
documento HTTP es GET, y luego POST para devolver datos al servidor.
La etiqueta <form> encierra un conjunto de etiquetas especificando controles de entrada del
usuario, tal como se muestra en el ejemplo siguiente:
PROGRAMACIÓN II UNIDAD I: ASP .NET
ejemplo3.htm
<html>
<head>
<title>¿Documento dinámico? Tal vez…</title>
</head>
<body>
<form action=”http://localhost/ejemplo3.htm” method=”get”>
<h2>Escoja una carrera sobre tecnología en la UTEC</h2>
<select name='Carrera'>
<option> Ingeniería en Sistemas y Computación</option>
<option> Licenciatura en Informática</option>
<option> Técnico en Ingeniería de Software</option>
<option> Técnico en Ingeniería de Hardware</option>
<option> Técnico en Ingeniería de Redes</option>
<option> Ninguna </option>
</select>
<br>
<input type=submit name='Seleccion' value='Enviar'></input>
</form>
</body>
</html>
Después de seleccionar la opción deseada y hacer click sobre el botón “Enviar”, el URL debería
mostrar lo siguiente (asumiendo que seleccionó la opción “Ninguna”)
http://localhost/”http://localhost/ejemplo3.htm”?Carrera=Ninguna&Seleccion=Enviar
Este URL modificado, a menudo llamado cadena de consulta, es enviado al servidor.
Adicionar la etiqueta “form” al cuerpo del documento es una parte para tener una aplicación
HTTP que en realidad interactúe con un usuario. Ahora se necesita un poco más de soporte del
lado del servidor, y es aquí donde el servidor empieza a jugar un papel mucho más activo.
IIS monitorea el puerto 80 por solicitudes. Cuando una solicitud llega, IIS ve la extensión de
archivo .asp y le solicita a ASP.DLL que maneje esta solicitud (así es como el mapeo de archivos
se establece). ASP.DLL simplemente reproduce el código estático HTML. Luego, cuando
encuentra las etiquetas de ejecución (<% y %>), ejecuta esos bloques al correrlos en un
analizador JavaScript (observe la etiqueta de lenguaje en la primera línea de código).
PROGRAMACIÓN II UNIDAD I: ASP .NET
HTML complejo que se ejecute en una forma que los humanos puedan leer en el navegador
del cliente. El proceso de “generar código HTML significativo para el cliente” de pronto
significa hacer cosas como crear accesos a bases de datos, autenticación de la identidad del
cliente, y mantener un seguimiento de la orden del cliente. Imagine hacer esto desde cero.
Mientras los marcos de trabajo tales como ASP clásico recorren un largo camino para hacer el
desarrollo web más accesible, muchas características aún son dejadas para que los
desarrolladores las creen por sí mismos. Por ejemplo, construir un sitio web seguro pero
administrable con ASP clásico usualmente significa escribir su propio subsistema de seguridad
(o comprar uno). Administrar el estado de la UI emitida por su sitio web era a menudo una
tarea tediosa también.
6. ASP .NET.
Todo esto nos lleva a ASP .NET. Un tema común es que ASP .NET toma características
usualmente implementadas (una y otra vez) por desarrolladores y las incluye en el marco de
trabajo de ASP .NET.
ASP .NET ha estado evolucionando continuamente desde que fue liberado por primera vez.
ASP .NET 1.0 introdujo una tubería bien definida, un modelo de extensión viable, un modelo
de ejecución de control del lado del servidor, y numerosas características adicionales para
hacer el desarrollo de sitios web muy realizable. ASP .NET 2.0 llevó a ASP .NET 1.0 al siguiente
nivel e implantó aún más características comúnmente implementadas en el marco de trabajo.
Un ejemplo es la adición del subsistema de autenticación.
ASP .NET 3.5 presenta un par de características significativas:
a. La primera es soporte a Java Asíncrono y estilo de programación XML (comúnmente
conocido como AJAX).
b. La segunda es soporte para aplicaciones fundamentales de comunicación Windows
(Windows Communication Foundation) alojadas vía IIS/ASP .NET.