La Red de Conocimientos Pedagógicos - Currículum vitae - ¿Cuál es la función del método sendRedirect del objeto de respuesta? ¿En qué situaciones se suele utilizar?

¿Cuál es la función del método sendRedirect del objeto de respuesta? ¿En qué situaciones se suele utilizar?

La función de respuesta.sendRedirect es la redirección de direcciones (salto de página)

1.response.sendredirect(url);

No se pueden procesar páginas nuevas. El contexto de la página; (solicitud, respuesta,...) objeto de la página anterior, por lo que si usa request.getparameter(ff) para intentar llamar a los parámetros del objeto de solicitud de la página original, el resultado naturalmente será nulo

2.getservletcontext() .getrequestdispatcher(url).forward(request, Response);

La función de reenvío ha pasado los objetos de solicitud y respuesta de la página original a la nueva página, por lo que la anterior. y las páginas nuevas tienen los mismos objetos de solicitud y respuesta. request.getparameter(ff) puede obtener el valor correspondiente

3. La ruta de servletcontext.getrequestdispatcher debe ser una ruta absoluta relativa al contexto. servletrequest.getrequestdispatcher puede ser relativa o absoluta.

Servidor 4 formas de redirigir al cliente:

1. getrequestdispatcher() de servletcontext

2. getnameddispatcher() de servletcontext

3. getrequestdispatcher() de servletrequest

4. Sendredirect() de servletresponse realiza la redirección.

1.2.3 =gt; forward() 4. sendredirect()

Utiliza el método forward, porque son más eficientes. Solo cuando no se pueda utilizar el método de reenvío, utilice el método sendredirect() de servletresponse.

Comparación entre los métodos lt; jsp: fordwardgt; y sendredirect

Aunque ambos métodos lt; jsp: fordwardgt; y sendredirect pueden redirigir la página web navegada por el navegador a otras páginas web, pero los dos no son lo mismo en principio.

a.lt; jsp: fordwardgt;: La acción es utilizar el servidor para enviar datos al búfer antes de enviar la página web anterior al cliente, cancelar la salida de datos y luego enviarla. otra página. La información de una página web logra el efecto de redirigir el navegador. Ventajas: las variables del objeto de solicitud se pueden compartir entre dos páginas web.

b. sendredirect: La acción es a través de ")

Más intuitivo: respuesta.sendredirect(url); Redirige la respuesta del servidor. Cuando el servidor responde, el cliente El ciclo de vida de la solicitud final ha finalizado. En este momento, el resultado obtenido mediante request.getparameter() o request.getattribute() solo puede ser nulo getservletcontext().getrequestdispatcher(url).forward(request, Response); que la solicitud del cliente (solicitud) se transmite antes de que el servidor responda, es decir, no hay respuesta y siempre se puede transmitir - redirección: alexlovejava El primero es un salto al cliente y el segundo está en el lado del servidor. , el último puede pasar el objeto de solicitud al saltar, el primero solo puede pasar parámetros a través de ?, y el segundo es forword (). Las rutas URL de los dos son diferentes cuando se transfieren y las rutas se muestran en la dirección de IE. bar también son diferentes. Lo mismo,