转发和重定向
1.转发:当浏览器向服务器发送请求的时候,服务器自己不处理,而是调用其它的web资源进行处理!
2.重定向:当浏览器向服务器发送请求的时候,服务器返回给浏览器一个特殊的响应,这个特殊的响应告诉浏览器再向另一个地址发送一个请求!
发生在浏览器端还是服务器端 | 浏览器的请求次数 | 浏览器地址栏是否发生变化 | 浏览器是否能够感知到 | |
request | 服务器端 | 1 | 不变化 | 感知不到 |
response | 浏览器端 | 2 | 发生变化 | 感知到 |
get:转发---doGet
重定向----doGet
post:转发---doPost
重定向---doGet
当浏览器向服务器发送请求的时候,服务器返回给浏览器一个特殊的响应,这个特殊的响应告诉浏览器再向另一个地址发送一个请求!
HttpServletResponse的sendRedirect()方法。
服务器根据此请求寻找资源并发送给客户,它可以重定向到任意URL,不能共享request范围内的数据。例如:response.sendRedirect(“demo.jsp”);//重定向到demo.jsp
详解:假设浏览器访问servlet1,而servlet1想让servlet2为客户端服务。此时servlet1调用sendRedirect()方法,将客户端的请求重新定向到Servlet2。接着浏览器访问servlet2,servlet2对客户端请求作出反应。浏览器URL的地址栏改变。