Primero, hablemos de cómo funciona Asp.net.
La descripción concreta es la siguiente: Primero, el cliente solicita la página WEB. Luego, el servicio WEB busca el archivo de instrucciones (.aspx), y esto es manejado por la biblioteca de vínculos dinámicos aspnet_isapi.dll. Luego, el código Asp.net se envía a Common Language Runtime para su compilación. Luego, la secuencia HTML se devuelve al navegador y se ordena. Finalmente, el navegador procesa el HTML y muestra la página.
¿Qué es ISAPI?
Al comienzo de la era de Internet, los clientes tenían necesidades muy limitadas; todo lo que necesitaban eran archivos .htm. Sin embargo, con el tiempo, las necesidades del cliente se expandieron más allá de la funcionalidad contenida en archivos .htm o archivos estáticos.
Los desarrolladores necesitan ampliar o ampliar la funcionalidad del servidor web. Los proveedores de servidores web han diseñado diferentes soluciones, pero todos siguen el mismo tema de insertar ciertos componentes en el servidor web. Todas las tecnologías complementarias del servidor web permiten a los desarrolladores crear y conectar componentes para mejorar la funcionalidad del servidor web. Microsoft propuso ISAPI (API de servidor de Internet), Netscape propuso NSAPI (API de servidor de Netscape), etc. ISAPI es una tecnología importante que nos permite mejorar las capacidades de los servidores web compatibles con ISAPI (IIS es un servidor web compatible con ISAPI). Utilizamos los siguientes componentes para lograr esto:
1. Extensión ISAPI: la extensión ISAPI se implementa utilizando la biblioteca de enlaces dinámicos Win32. Puedes considerar una extensión ISAPI como una aplicación normal. El objetivo de procesamiento de la extensión ISAPI es la solicitud http.
2. Filtro ISAPI: cada vez que el cliente realiza una solicitud al servidor, la solicitud debe pasar por el filtro. El cliente no necesita especificar un filtro en la solicitud, simplemente envía la solicitud al servidor web, y el servidor web pasa la solicitud al filtro correspondiente. A continuación, el filtro puede modificar la solicitud, realizar algunas operaciones de inicio de sesión, etc.
Proceso de procesamiento de solicitudes ASP.NET:
El proceso de procesamiento de solicitudes de ASP.NET se basa en el modelo de canalización, en el que ASP.NET pasa solicitudes http a todos los módulos de la canalización. Cada módulo recibe solicitudes http y tiene control total. Los módulos pueden manejar las solicitudes de la forma que consideren adecuada. Una vez que la solicitud pasa por todos los módulos HTTP, finalmente el controlador HTTP la procesa. El controlador HTTP procesa la solicitud y el resultado pasará nuevamente por el módulo HTTP en la canalización.
Filtro ISAPI:
IIS en sí no admite páginas dinámicas, lo que significa que solo admite el contenido de páginas HTML estáticas. Por ejemplo, .asp, .aspx, .cgi, .php, etc., IIS no procesará estas etiquetas, las tratará. as El texto de composición se envía al cliente sin ningún procesamiento. Para solucionar este problema. IIS tiene un mecanismo llamado filtro ISAPI, que es un componente estándar (componente COM).
Cuando el servicio Asp.net se registra en IIS, registrará las extensiones de archivo que cada extensión puede manejar en IIS (como: *.ascx, *.aspx, etc.). Una vez iniciada la extensión, procesa archivos que IIS no puede procesar de acuerdo con el método definido y luego pasa el control a un proceso que maneja específicamente el código, lo que permite que este proceso comience a procesar el código, genere código HTML estándar y coloque estos códigos después de la generación se agregan al HTML original y finalmente se devuelve el HTML completo a IIS, y luego IIS envía el contenido al cliente.