转发与重定向区别
#转发
在web服务器段处理用户请求的时候,需要多个web组件配合才能完成的情况。一个web组件(servlet/jsp)将未完成的处理通过容器转交给另外一个组件来继续完成,这个转交的过程叫做转发。
#重定向
服务器向浏览器发送302状态码和重定向地址,浏览器收到后重新向地址发出请求(resp.sendRedirect)浏览器地址改变。
两者之间区别:
转发:
1.一次请求
2.地址不变
3.A组件和B组件共用一个request,可以通过request共享数据
4.只能转发到项目内容部的资源
重定向:
1.二次请求
2.地址改变
3.A组件和B组件使用两个不同的request,不能通过request共享数据
4.可以重定向到项目外部的资源