转发:第一个Servelt工作完毕后,代替当前浏览器向Tomcat申请调用第二个Servlet。Tomcat在接受到申请之后,调用第二个Servelt来完成本次请求中剩余任务
重定向:第一个Servlet工作完毕后,将【第二个Servelt地址】推送给用户浏览器,由用户浏览器根据这个地址来【自动的】向第二个Servelt发送请求
1.response.sendRedirect(第二个Servelt地址)
—— —— —— —— —— —— ——
2.response.setHeader(“Location”,“地址”);
response.setStatus(状态码);
重定向 | 转发 |
---|---|
客户发送一个请求到服务器,服务器向客户端返回一个响应,响应行告诉客户端你必须要再发送一个请求 | 服务器内部进行处理转发,是一次请求 |
地址栏发生变化 | 地址栏不发生变化 |
重定向之间的请求不共享数据 | 转发一次请求共享数据 |
重定向可以跳转到任意URL | 转发只能跳转本站点资源 |
重定向是客户端行为 | 转发是服务器行为 |
重定向至少两次 | 转发一次 |