Foros del Web » Programando para Internet » ASP Clásico »

Response.Redirect versus Server.Transfer

Estas en el tema de Response.Redirect versus Server.Transfer en el foro de ASP Clásico en Foros del Web. Veo que hay problemas a la hora de comprender ambos métodos que, aunque parezcan iguales, no lo son Voy a intentar explicar las diferencias entre ...
  #1 (permalink)  
Antiguo 25/01/2006, 11:58
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Response.Redirect versus Server.Transfer

Veo que hay problemas a la hora de comprender ambos métodos que, aunque parezcan iguales, no lo son Voy a intentar explicar las diferencias entre ambos, cuales son sus ventajas y sus inconvenientes. Como no soy un lumbreras (=gurú) del tema igual me equivoco, espero que abramos el debate para ir limando las dudas.

RESPONSE.REDIRECT o VETE A OTRO SITIO CON EL CUENTO, PENDEJO

El método redirect del objeto response envía un mensaje el navegador diciendole que se dirija a otra página. El servidor se limita a enviar dicha direccion al navegador, cerrando todos los procesos que la página activa estuviera haciendo, olvidándose de variables, cadenas query y formularios que hubiera. Es el método mas usado en ASP para enviar al usuario a otro sitio. ¿Ventajas? Principalmente que cierra todos los procesos, objetos, sesiones, etc que hubiera sin que el programador tenga que preocuparse que de cerrarlos previamente. Ideal que sacar al usuario del sitio web y enviarlo fuera de nuestro sitio web. ¿Inconvenientes? Bueno, principalmente que nos cierra un monton de cosas si lo usamos para direccionar a otra página dentro de nuestro servidor.

SERVER.TRANSFER o TE QUIERO PERO TENEMOS QUE DEJARLO, AMOR

El método Transfer del objeto Server es muy similar al anterior: o sea, envía un mensaje al navegador diciéndole que se dirija a otra página pero manteniendo los recursos que se hayan creado en la página actual. Es como cambiar el "foco" en el servidor web, transfiriendo los recursos con el. ¿Ventajas? Lo mejor de todo es que se lleva consigo los valores de la página (forms, querystring, etc) liberando al servidor de reprocesar de nuevo las solicitudes. ¿Inconvenientes? Pues que solo sirve para páginas en el mismo servidor y en el mismo lenguaje.


Bueno. Si alguien quiere arreglar, añadir, quitar y/o decir lo que piensa, adelate. Gracias por su paciencia.

Un saludo
  #2 (permalink)  
Antiguo 25/01/2006, 12:06
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
http://www.forosdelweb.com/showthrea...light=transfer

:D
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 25/01/2006, 12:14
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Gracias u_goldman por tu paciencia y buen humor. No es que no lo haya leido (que no lo hice :D ) es que son dudas que se repiten y la gente sigue preguntando por lo mismo y usando a diestro y siniestro transfer y redirect cuando son cosas distintas realmente.

De nuevo, mis disculpas

Un saludo
  #4 (permalink)  
Antiguo 25/01/2006, 12:16
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Dsiculpas por que?
Si fue una buena discusion, pense que podria complementar lo que ya explicaste muy bien!

Salu2 tam!
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 25/01/2006, 12:29
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 4 meses
Puntos: 2
muy buena aclaracion
__________________
Manual de ASP Avanzado ;-)
  #6 (permalink)  
Antiguo 25/01/2006, 14:35
Avatar de WILLIAMGG  
Fecha de Ingreso: febrero-2005
Mensajes: 218
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola una, mi consulta era la sgte, disculpad por mi ignorancia pero me urge conocer acerca d, cuando yo utilizo el response.redirect, en la siguiente página los datos son recuperados por el request.querystring("variable_enviada")verdad? o es necesario enviar los valores a recuperar mediante el paso de variables osea por ejplo: response.redirect "pagina1.asp?txtvar1="&var1&"txtvar2"&var2.... .
Algo mas, tiene k ver mucho el metodo de envio de datos del formulario ohhh?
Porfa Si me aclaran esto
  #7 (permalink)  
Antiguo 25/01/2006, 14:49
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Hola,

Response.Redirect crea otra llamada http, por lo cual necesariamente tienes que enviar las variables de nuevo para recuperarlas con el objeto Request.

Response.Redirect("pagina.asp?variable=valor")

Cuando utilizas el metodo Transfer, todos los valores enviados por get o por post siguen activos, pues no haces otra llamada http, solo transfieres el foco de tu aplicacion hacia ese archivo.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #8 (permalink)  
Antiguo 25/01/2006, 14:49
Avatar de hanscruz  
Fecha de Ingreso: junio-2005
Mensajes: 278
Antigüedad: 19 años
Puntos: 0
Tengo Una Pregunta

YO TENGO OTRA PREGUNTA

Para no iniciar otro post quisiera preguntar a los capos de aqui como hago para que el response.redirect habra otra pagina pero en un frame mas especificamente como trabajo con frames quisiera que se carge en el principal osea _top.

Osea hacer lo mismo que con el href
<a href="sitio.asp" target="_top"></a>

Saludos.
  #9 (permalink)  
Antiguo 25/01/2006, 14:52
Avatar de WILLIAMGG  
Fecha de Ingreso: febrero-2005
Mensajes: 218
Antigüedad: 19 años, 3 meses
Puntos: 0
Muy Agradecido

Gracias amix Goldman, por tu aclaracion me haz aclarado mi duda
Salud por el conocimiento
  #10 (permalink)  
Antiguo 25/01/2006, 14:55
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Cita:
Iniciado por hanscruz
YO TENGO OTRA PREGUNTA

Para no iniciar otro post quisiera preguntar a los capos de aqui como hago para que el response.redirect habra otra pagina pero en un frame mas especificamente como trabajo con frames quisiera que se carge en el principal osea _top.

Osea hacer lo mismo que con el href
<a href="sitio.asp" target="_top"></a>

Saludos.
No soy capo, pero no puedes hacer esto, ASP se ejecuta en el servidor, por lo cual no tiene manera de saber si existe un frame o no (cliente), necesitas hacerlo con javascript...revisa las FAQs, ahi hay un post que habla del tema.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #11 (permalink)  
Antiguo 25/01/2006, 14:55
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Cita:
Iniciado por WILLIAMGG
Gracias amix Goldman, por tu aclaracion me haz aclarado mi duda
Salud por el conocimiento
Cualquier excusa en buena
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #12 (permalink)  
Antiguo 25/01/2006, 20:30
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Cita:
Iniciado por hanscruz
YO TENGO OTRA PREGUNTA

Para no iniciar otro post quisiera preguntar a los capos de aqui como hago para que el response.redirect habra otra pagina pero en un frame mas especificamente como trabajo con frames quisiera que se carge en el principal osea _top.

Osea hacer lo mismo que con el href
<a href="sitio.asp" target="_top"></a>

Saludos.
Podrías redirigirlo (.transfer) a una página que lo único que hiciera es que abriera el popup y cerrara la ventana (si es que se abriera). No se si funcione pero es una idea.

Salud ... os
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:55.