定义
-
请求转发
当用户发送一个request的时候,web服务器在内部进行处理和跳转,将目标资源发送给用户。
如图,客户端访问第一个界面时,服务器通过请求转发,将另一个界面的内容的回复给客户端。 -
重定向
当用户发起request的时候,web服务器回复用户告诉他目标资源的地址,然后用户浏览器发起一次新的request跳转到目标资源。
如图,客户端访问第一个界面时,web服务器告诉(response)客户端目标资源的地址,然后客户端发起一次新的request要求访问新的目标地址。
区别
请求转发 | 重定向 | |
---|---|---|
地址栏URL是否改编 | 不变 | 改变 |
请求次数 | 1次 | 2次 |
完成地点 | web服务器 | 客户端浏览器 |
request数据是否保留 | 保留 | 不保留 |
语句 | request.getRequestDispatcher(“welcome.jsp”).forward(request, response); | response.sendRedirect(“login.jsp”); |