forward和redirect的区别是什么

1、请求方不同:redirect是由客户端发起的请求 , 而forward是服务端发起的请求 。
2、浏览器地址表现不同:redirect是浏览器地址显示被请求的url , 而forward是浏览器地址不显示被请求的url 。
3、参数传递不同:redirect需要重新开始一个request , 原页面的request生命周期结束 。forward另一个连接的时候 。request变量是在其生命周期内的 。另一个页面也可以使用 , 其实质是把目标地址include 。
【forward和redirect的区别是什么】4、底层运作不同:redirect发送的请求信息又回送给客户机 , 让客户机再转发到另一个资源上 , 需要在服务器和客户机之间增加一次通信 。forward服务器端直接找到目标 , 并include过来 。
5、定义不同:Forward——客户端和浏览器只发出一次请求 , Servlet、JSP或其它信息资源 , 由第二个信息资源响应该请求 , 在请求对象request中 , 保存的对象对于每个信息资源是共享的 。Redirect——实际是两次HTTP请求 , 服务器端在响应第一次请求的时候 , 让浏览器再向另外一个URL发出请求 , 从而达到转发的目的 。

    秒懂生活扩展阅读