库拉索芦荟 - 芦荟汇聚地!

redirect

> 知识库 芦荟君 2024-11-12 05:56

forward和redirect的区别,说法错误的是

forward和redirect是在Web开发中常用的两个技术,它们的主要区别在于:1. forward是服务器内部的重定向,客户端请求的页面不变,而是由服务器直接转发到新的页面,因此客户端浏览器地址栏中的URL不变,仍然是原来的URL;而redirect则是服务器告诉客户端浏览器需要请求新的页面,客户端浏览器会发送新的请求从而改变URL。2. forward不会改变HTTP请求的方法,即请求的方法仍然是原来的,而redirect会将HTTP请求方法改为GET,即使原来的请求方法是POST。3. forward是在服务器内部完成,不需要客户端浏览器的参与,而redirect则需要客户端浏览器重新发送请求,因此redirect的开销比forward要大。因此,说法错误的是:forward和redirect是同样的技术,它们的主要区别在于使用的场景不同。


forward和redirect的区别

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

查看全部
热门文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
大家都在看