Dos métodos de redirección de página web del lado del servidor en IIS

  
proporcionan dos métodos para la redirección (o dirección) de la página web del lado del servidor en IIS5, uno es el método Server.Transfer y el otro es el método Server.Execute. Se dice que son redirecciones del lado del servidor porque la dirección entre las diferentes páginas se realiza directamente en el lado del servidor, y el cliente solo puede ver los resultados, no el proceso de giro. Esto es diferente del método Response.Redirect que usamos en IIS4.
Anteriormente, cuando necesitábamos pasar de una página a otra, generalmente usábamos el método de redireccionamiento del objeto de Respuesta. Por ejemplo, en una de nuestras páginas que requiere autenticación del usuario, cuando el usuario no ha iniciado sesión, Vaya a la página de inicio de sesión del usuario, el código de ejemplo simple es el siguiente:
content.asp

<%
Si Session ("isLogin") = "" Entonces
Response.Redirect "Login.asp" < BR> Fin si

'Contenido normal

% >


Entonces, de hecho, el método Response.Redirect devuelve un estado del encabezado Http al navegador. Código de etiqueta 302,

HTTP 1.0 302 Objeto movido
URL de ubicación

Este es en realidad el navegador que solicita el archivo content.asp del servidor, el archivo content.asp se procesa después del procesamiento Navegador, usted primero accede al archivo login.asp, por lo que el navegador envía una solicitud a la página login.asp al servidor. Así que, en realidad, se volvió una esquina. De esta manera, cuando la red del cliente no está en buenas condiciones, las dos solicitudes reducirán en gran medida la velocidad de respuesta de la aplicación e incluso ocuparán el exceso de ancho de banda. En particular, hay algunos problemas cuando necesita pasar parámetros.


En IIS5, se proporcionan los métodos Server.Transfer y Server.Execute.

Los dos métodos se realizan entre los servidores, por lo que se puede reducir el ancho de banda de red del cliente, pero como el lado del servidor guarda algún estado del programa 1, también consume una cierta cantidad de memoria.

//Este artículo proviene de la red de aplicaciones de software y hardware de computadora www.45it.com reproducida, especifique
Entonces, ¿cuál es la diferencia entre Server.Transfer y Server.Execute?

Por ejemplo, hay dos archivos, file1.asp y file2.asp

Todos vamos a file2.asp dentro de file1.asp


Al usar el método Tansfer:

file1.asp

<%
Response.Write "File 1 Header < br >"

Server.Transfer "file2.asp"
'se detiene aquí y ejecuta la siguiente instrucción, cambiando a

Response.Write "File 1 Footer < br >"

% >

file2.asp

<%
Response.Write "小雨 在线"
% >


All, cuando ejecutamos el archivo file1.asp, El resultado que obtenemos es

File 1 Header
小雨 在线

Porque, cuando el programa encuentra el método de Transferencia, dejará de ejecutar la siguiente declaración y luego ejecutará el programa que se convierte en
>


Al usar el método Execute:

file1.asp

<%
Response.Write "File 1 Header < br >"

Server.Execute "file2.asp"
'Ejecute file2.asp aquí, continúe ejecutando el resto una vez completado

Response.Write "File 1 Footer < br >"

% >

file2.asp

<%
Re sponse.Write "Archivo 2"
% >


Todos, cuando ejecutamos el archivo file1.asp, obtenemos el resultado de

Archivo 1 Encabezado
Archivo2
Archivo 1 Pie de página

Porque, cuando el programa encuentra el método Execute, ejecutará el programa redirigido y luego continuará ejecutando el resto de la primera página.

De hecho, el método Execute es igual que la subrutina que solemos escribir, similar a la llamada de subrutina.

como se muestra a continuación:


Copyright © Conocimiento de Windows All Rights Reserved