servlet API中forward() 与redirect()的区别?
2017-03-17 11:33
253 查看
转发:
request.getRequestDispatcher(URL).forward(request,response); 转发仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;
重定向:
response.sendRedirect(URL); 重定向是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。
两者比较:从上所述,可以看出“转发”比“重定向”更加的高效,在转发可以满足需求时,尽量使用转发,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其他服务器上的资源,则必须使用“重定向”response.sendRedirect(URL);
效率上比较: 转发 大于 重定向
转发:URL不改变 带值传递
重定向:URL改变 不带值
有不足之处欢迎大家指正!
request.getRequestDispatcher(URL).forward(request,response); 转发仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;
重定向:
response.sendRedirect(URL); 重定向是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。
两者比较:从上所述,可以看出“转发”比“重定向”更加的高效,在转发可以满足需求时,尽量使用转发,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其他服务器上的资源,则必须使用“重定向”response.sendRedirect(URL);
效率上比较: 转发 大于 重定向
转发:URL不改变 带值传递
重定向:URL改变 不带值
有不足之处欢迎大家指正!
相关文章推荐
- xwork配置文件中chain和redirect的用法区别
- Jsp中Forward和Redirect的区别。
- 转发(forward)、包含(include)及转向(redirect)的区别与联系
- Response.Redirect和Server.Transfer的区别
- Server.Transfer和Response.Redirect 区别
- Response.Redirect方法和Server.Transfer的区别
- forword redirect 区别
- Response.Redirect和Server.Transfer的区别(转)
- Server.Transfer,Response.Redirect的区别
- forward,include,redirect区别。
- Server.Transfer,Response.Redirect的区别
- Server.Transfer,Response.Redirect的区别
- ASP.NET学习 之 Redirect,Transfer,Execute的区别
- Server.Transfer,Response.Redirect的区别(转)
- Server.Transfer与Response.Redirect的区别
- Server.Transfer,Response.Redirect的区别;使用HttpContext.RewritePath来配合Server.Transfer/Execute
- ASP.NET学习 之 Redirect,Transfer,Execute的区别
- forward与redirect转发的区别
- response.redirect和pageContext.forward的区别
- server.transfer和response.redirect的区别