Active Server Pages ( ASP ) es el primer motor y lenguaje de secuencias de comandos del lado del servidor de Microsoft para páginas web dinámicas .
Fue lanzado por primera vez en diciembre de 1996, antes de ser reemplazado en enero de 2002 por ASP.NET .
Lanzado inicialmente como un complemento de Internet Information Services (IIS) a través del Windows NT 4.0 Option Pack (1996), se incluye como un componente de Windows Server (desde la versión inicial de Windows 2000 Server ). Ha habido tres versiones de ASP, cada una introducida con diferentes versiones de IIS:
ASP 2.0 proporciona seis objetos integrados : Aplicación, ASPError, Solicitud, Respuesta, Servidor y Sesión. Un Session
objeto, por ejemplo, representa una sesión que mantiene el estado de las variables de una página a otra. [1] El soporte del motor Active Scripting del modelo de objetos componentes permite que los sitios web ASP accedan a la funcionalidad de bibliotecas compiladas , como las bibliotecas de vínculos dinámicos .
ASP 3.0 no difiere mucho de ASP 2.0, pero ofrece algunas mejoras adicionales, como el método Server.Transfer, el método Server.Execute y un objeto ASPError mejorado. ASP 3.0 también permite el almacenamiento en búfer de forma predeterminada y optimizó el motor para un mejor rendimiento.
ASP fue compatible hasta el 14 de enero de 2020 en Windows 7 . [2] El uso de páginas ASP será compatible con Windows 8 durante un mínimo de 10 años a partir de la fecha de lanzamiento de Windows 8. [2] ASP es actualmente [ ¿cuándo? ] compatible con todas las versiones disponibles de IIS. [3]
ASP utiliza secuencias de comandos en el servidor para generar contenido que se envía al navegador web del cliente a través de una respuesta HTTP. El intérprete ASP lee y ejecuta todo el código de script entre las etiquetas <% y %>, cuyo resultado es la generación de contenido. Estos scripts se escribieron utilizando VBScript , JScript o PerlScript . Para seleccionar el idioma se puede utilizar la @Language
directiva, la sintaxis o la configuración del servidor. En el siguiente ejemplo, Response.Write Now() está en una página HTML ; sería reemplazado dinámicamente por la hora actual del servidor.<script language="language" runat="server" />
Las páginas web con la extensión de nombre de archivo .asp utilizan ASP, aunque algunos sitios web disfrazan su elección de lenguaje de secuencias de comandos por motivos de seguridad utilizando las extensiones más comunes .htm o .html . Las páginas con la extensión .aspx utilizan ASP.NET compilado ; sin embargo, las páginas ASP.NET aún pueden incluir algunas secuencias de comandos ASP. La introducción de ASP.NET llevó al uso del término ASP clásico para la tecnología original.
Sun Java System ASP (anteriormente ChiliSoft ASP) era un emulador popular y supuestamente completo, [4] pero ha sido descontinuado.
El objeto servidor permite conexiones a bases de datos (ADO), sistema de archivos y uso de componentes instalados en el servidor.
< % Dim oAdoCon , oAdoRec , oAdoStm , oCdoCon , oCdoMsg , oSciDic , oSciFsm , oMswAdr Establezca oAdoCon = Servidor . CreateObject ( "ADODB.Connection" ) Establezca oAdoRec = Servidor . CreateObject ( "ADODB.Recordset" ) Establezca oAdoStm = Servidor . CreateObject ( "ADODB.Stream" ) Establezca oCdoCon = Servidor . CreateObject ( "CDO.Configuration" ) Establezca oCdoMsg = Servidor . CreateObject ( "CDO.Message" ) Establezca oSciDic = Servidor . CreateObject ( "Scripting.Dictionary" ) Establezca oSciFsm = Servidor . CreateObject ( "Scripting.FileSystemObject" ) Establezca oMswAdr = Servidor . CrearObjeto ( "MSWC.Swingbridge" ) %>
Este objeto almacena variables globales, que son variables accesibles para todos los usuarios.
<% Aplicación ( "Ali" ) = Respuesta "Mi aplicación ASP" . Escribe "Bienvenido a" & Servidor . HTMLEncode ( Aplicación ( "Ali" )) y "!" %>
Almacena variables accesibles sólo para un único visitante, que son variables locales.
< % Si Len ( Solicitud . QueryString ( "nombre" )) > 0 Entonces Sesión ( "nombre" ) = Solicitud . QueryString ( "nombre" ) Fin si Respuesta . Escriba "Bienvenido" y Servidor . HTMLEncode ( Sesión ( "nombre" )) y "!" %>
El objeto de sesión se basa en archivos y se bloquearán y procesarán a su vez múltiples solicitudes simultáneas de lectura y/o escritura.
Permite la gestión y corrección de errores no fatales.
< % en caso de error Reanudar siguiente Respuesta . Escribe 1/0 ' División por cero Si Errar . Número <> 0 Luego Respuesta . Escriba "Código de error:" & Servidor . HTMLEncode ( número de error ) y respuesta "<br />" . Escriba "Fuente del error:" & Servidor . HTMLEncode ( Err . Fuente ) y respuesta "<br />" . Escriba "Descripción del error:" & Servidor . HTMLEncode ( Err . Descripción ) & "<br />" Err . Borrar final si %>