ASP.NET es un framework para aplicaciones web

Anuncio
Universidad Tecnológica Americana
“UNITA”
Carla Terán
Informática
ASP
ACTIVE SERVER PAGES
La tecnología ASP está estrechamente relacionada con el modelo
tecnológico de su fabricante. Intenta ser solución para un modelo de
programación rápida ya que "programar en ASP es como programar en
Visual Basic y C#", por supuesto con muchas limitaciones y algunas
ventajas específicas en entornos web.
Lo interesante de este modelo tecnológico es poder utilizar diversos
componentes ya desarrollados como algunos controles ActiveX así como
componentes del lado del servidor, tales como CDONTS, por ejemplo, que
permite la interacción de los scripts con el servidor SMTP que integra IIS.
Se facilita la programación de sitios web mediante varios objetos
integrados, como por ejemplo un objeto de sesión basada en cookies, que
mantiene las variables mientras se pasa de página a página.
ASP.NET es un framework para aplicaciones web desarrollado y
comercializado por Microsoft. Es usado por programadores para construir
sitios web dinámicos, aplicaciones web y servicios web XML. Apareció en
enero de 2002 con la versión 1.0 del .NET Framework, y es la tecnología
sucesora de la tecnología Active Server Pages (ASP). ASP.NET esta
construido sobre el Common Language Runtime, permitiendo a los
programadores escribir código ASP.NET usando cualquier lenguaje
admitido por el .NET Framework.
CARACTERISTICAS
Las páginas de ASP.NET, conocidas oficialmente como "web forms"
(formularios web), son el principal medio de construcción para el
desarrollo de aplicaciones web.8 Los formularios web están contenidos en
archivos con una extensión ASPX; en jerga de programación, estos
archivos típicamente contienen etiquetas HTML o XHTML estático, y
también etiquetas definiendo Controles Web que se procesan del lado del
servidor y Controles de Usuario donde los desarrolladores colocan todo el
código estático y dinámico requerido por la página web. Adicionalmente, el
código dinámico que se ejecuta en el servidor puede ser colocado en una
página dentro de un bloque <% -- código dinámico -- %> que es muy
similar a otras tecnologías de desarrollo como PHP, JSP y ASP, pero esta
práctica es, generalmente, desaconsejada excepto para propósitos de enlace
de datos pues requiere más llamadas cuando se genera la página.
UTILIDAD
En la actualidad una aplicación ASP.NET puede ejecutarse de dos formas
distintas:
Aplicaciones cliente/servidor: Estas aplicaciones están típicamente en
formato de ejecutables compilados. Estos pueden integrar toda la riqueza
de una interfaz de usuario, tal es el caso de las aplicaciones de desempeño y
productividad, pero no se reúne la lógica de negocio como un recurso que
se pueda reutilizar. Además acostumbran ser menos gestionables y
escalables que las demás aplicaciones.
Aplicaciones que utilizan el navegador: Dichas aplicaciones están
caracterizadas por contar con una interfaz de web rica y muy útil. La
interfaz gráfica integra varias tecnologías, las cuales son el HTML,
XHTML, scripting, etc; siempre y cuando el navegador que se esté
utilizando soporte estas tecnologías.
EVENTOS
Dentro de los delimitadores de ASP puede incluir cualquier instrucción,
expresión, procedimiento u operador que sea válido en el lenguaje principal
para secuencia de comandos. Una instrucción, en VBScript y en otros
lenguajes, es una unidad sintácticamente completa que expresa un tipo de
acción, declaración o definición. La instrucción condicional
If...Then...Else que aparece a continuación es una instrucción de VBScript
muy común:
<%
Dim dtmHour
dtmHour = Hour(Now())
If dtmHour < 12 Then
Saludos = "Buenos días"
Else
strGreeting = "Hola"
End If
%>
<%= strGreeting %>
Según la hora, la secuencia de comandos asigna el valor "Buenos días" o el
valor "Hola" a la variable de cadena strGreeting. La instrucción <%=
strGreeting %> envía al explorador el valor actual de la variable.
De esta forma, los usuarios que vean esta secuencia de comandos antes de
las 12:00 de la mañana (según la zona horaria del servidor Web) verían la
siguiente línea de texto:
Buenos días
Los usuarios que vean esta secuencia de comandos después de las 12:00 de
la mañana verían la siguiente línea de texto:
Hola
Puede incluir texto HTML entre las secciones de una instrucción. Por
ejemplo, la secuencia de comandos siguiente, que combina HTML dentro
de una instrucción If...Then...Else, produce el mismo resultado que la del
ejemplo anterior:
<%
Dim dtmHour
dtmHour = Hour(Now())
If dtmHour < 12 Then
%>
Buenos días
<% Else %>
Hola
<%End If %>
Si la condición es verdadera, es decir, si es antes del mediodía, el servidor
Web envía al explorador el código HTML que sigue a la condición
("Buenos días"); de lo contrario, envía el código HTML que sigue a Else
("Hola"). Esta forma de combinar HTML y comandos de secuencia de
comandos es cómoda para continuar la instrucción If...Then...Else en
varias líneas de texto HTML. El ejemplo anterior es más útil si desea
presentar un saludo en varias partes de una página Web. Puede asignar el
valor de la variable una única vez y después presentarla varias veces.
En lugar de mezclar texto HTML con comandos de secuencia de
comandos, puede devolver texto HTML al explorador desde dentro de los
comandos de secuencia de comandos. Para devolver texto al explorador,
utilice el objeto integrado Response de ASP. El ejemplo siguiente produce
el mismo resultado que las secuencias de comandos anteriores:
<%
Dim dtmHour
dtmHour = Hour(Now())
If dtmHour < 12 Then
Response.Write "Buenos días"
Else
Response.Write "Hola"
End If
%>
Response.Write envía al explorador el texto que le sigue. Utilice
Response.Write desde una instrucción cuando desee generar de forma
dinámica el texto devuelto al explorador. Por ejemplo, puede generar una
cadena de texto que contenga los valores de varias variables. Aprenderá
más acerca del objeto Response, y de los objetos en general, en Utilizar
componentes y objetos y Enviar contenido al explorador. Por ahora,
observe simplemente que dispone de varias maneras de insertar comandos
de secuencias de comandos en las páginas HTML.
Puede incluir procedimientos escritos en su lenguaje predeterminado de
secuencias de comandos dentro de delimitadores ASP. Para obtener más
información, consulte Trabajar con lenguajes de secuencias de comandos.
Si va a trabajar con comandos JScript, puede insertar las llaves que indican
un bloque de instrucciones directamente en sus comandos ASP, incluso
aunque estén entremezclados con etiquetas y texto HTML. Por ejemplo:
<%
if (screenresolution == "low")
{
%>
Ésta es la versión de texto de la página.
<%
}
else
{
%>
Ésta es la versión multimedia de la página.
<%
}
%>
-O bien<%
if (screenresolution == "low")
{
Response.Write("Ésta es la versión de texto de la página.")
}
else
{
Response.Write("Ésta es la versión multimedia de la página.")
}
%>
MANEJO DE ERRRORES
Las aplicaciones ASP.NET son alojadas en un servidor web y se tiene
acceso a ellas mediante el protocolo sin estado HTTP, que no guarda
ninguna información sobre conexiones anteriores. Por lo tanto, si la
aplicación requiere interacción entre conexiones, tiene que implementar su
propia administración del estado. ASP.NET proporciona varias maneras de
administrar el estado de las aplicaciones ASP.NET.
Los eventos para solución de errores en la programación mas utilizado son
el evento try and cach.
ARQUITECTURA DE ASP
En esta sección se proporciona una descripción general sobre las relaciones
entre los subsistemas y la infraestructura de ASP.NET, con respecto a la
seguridad. En la siguiente ilustración se muestran las relaciones entre los
sistemas de seguridad de ASP.NET.
Como se muestra en la ilustración, todos los clientes Web se comunican
con las aplicaciones ASP.NET a través de los Servicios de Internet
Information Server (IIS). IIS descifra y, opcionalmente, realiza la
autenticación de la petición. Si la opción Permitir anónimos está
establecida en true, no se efectuará ninguna autenticación. IIS también
busca el recurso solicitado (como una aplicación ASP.NET) y, si se
autoriza al cliente, devuelve el recurso correspondiente.
Además de las características integradas de ASP.NET, una aplicación
ASP.NET puede utilizar características de seguridad de bajo nivel de .NET
Framework. Para obtener más información, vea el tema "Conceptos clave
de seguridad" en la Ayuda de .NET Framework.
Integración con IIS
Si se considera la posibilidad de utilizar la autenticación de ASP.NET, es
importante comprender cómo interactúa con los servicios de autenticación
de IIS.
IIS supone siempre que se asigna un conjunto de credenciales a una cuenta
de Microsoft Windows NT y utiliza las credenciales para autenticar los
usuarios. Existen tres tipos distintos de autenticación disponibles tanto en
IIS 5.0 como en IIS 6.0: básica, implícita y Autenticación de Windows
integrada (NTLM o Kerberos). Se puede seleccionar el tipo de
autenticación que se desea utilizar en los servicios de administración de
IIS. Para obtener más información acerca de la autenticación de IIS, vea
Autenticación en IIS 6.0.
Si se solicita una dirección URL que contiene una aplicación ASP.NET, la
información sobre la autenticación y la petición se entrega a la aplicación.
ASP.NET proporciona dos tipos adicionales de autenticación, que se
describen en la tabla siguiente.
Proveedor de
autenticación
de ASP.NET Descripción
Autenticación Sistema que redirige las peticiones no autenticadas a un formulario
mediante
HTML mediante el redireccionamiento del cliente HTTP. El usuario
formularios
proporciona las credenciales y envía el formulario. Si la aplicación
autentica la petición, el sistema emite un vale de autenticación en
una cookie que contiene las credenciales, o una clave, para
readquirir la identidad. Las peticiones posteriores se emiten con la
cookie en los encabezados de la petición; se autentican y autorizan
en un controlador ASP.NET mediante el método de validación que
especifique el programador de la aplicación.
Autenticación Servicio de autenticación centralizado proporcionado por Microsoft
mediante
que ofrece a los sitios Web suscritos servicios de perfil básico y un
pasaporte
inicio de sesión único.
Descargar