请求与重定向的区别

转自: 请求与重定向的区别

一个web资源收到客户端请求后,通知服务器去调用另外一个web资源进行处理,称之为请求转发。

一个web资源收到客户端请求后,通知浏览器去访问另外一个web资源,称之为请求重定向

RequestDispatcher.forward方法只能将请求转发给同一个WEB应用中的组件;而HttpServletResponse.sendRedirect 方法还可以重定向到同一个站点上的其他应用程序中的资源,甚至是使用绝对URL重定向到其他站点的资源。

如果传递给HttpServletResponse.sendRedirect 方法的相对URL以“/”开头,它是相对于整个WEB站点的根目录;如果创建RequestDispatcher对象时指定的相对URL以“/”开头,它是相对于当前WEB应用程序的根目录。

调用HttpServletResponse.sendRedirect方法重定向的访问过程结束后,浏览器地址栏中显示的URL会发生改变,由初始的URL地址变成重定向的目标URL;调用RequestDispatcher.forward 方法的请求转发过程结束后,浏览器地址栏保持初始的URL地址不变。

时间: 2024-07-31 14:32:19

请求与重定向的区别的相关文章

servlet请求转发与重定向的区别

1.请求转发(forward) request.getRequestDispatcher("parameter").forward(request,response);跳转到指定的服务器资源,地址栏URL不变,请求响应不变. 2请求包含(include)request.getRequestDispatcher("parameter").include(request,response);跳转到指定的服务器资源且包含之前的资源,地址栏URL不变,请求响应不变. 注* 

请求转发和重定向的区别以及他们的实现方式?

1.请求转发是什么? 答:请求转发是RequestDispatcher.forword方法:作用是:在服务器端内部将请求转发给另一个资源,浏览器只知道发出请求并得到响应结果,但不知道在服务器程序内部发生了转发行为. 举例:别名为“浏览器”的人写信找张三100块,张三只有50块,于是张三找李四借了50块,然后将钱转给“浏览器”.可知,“浏览器”只发出一封信和收到一次回复,他只知道钱是张三借给他的,并不知道有一部分是李四的. 2.重定向是什么? 答:重定向是HttpServletResponse.s

请求转发与请求重定向的区别

1,请求重定向: 客户端行为:response.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保持,地址栏的URL地址会改变. 2,请求转发: 服务器行为:request.getRequsetDispatcher().forward(requset,response);是一次请求,转发后请求对象会保存,地址栏的URL地址不会改变.(服务器内部转发,所有客户端看不到地址栏的改变) 下面举个生活中的实例来说明: 请求重定向: 就好比我们找一个A广告公司给设计名片,A明确

JavaWeb中请求转发和请求重定向的区别

针对于JavaWeb中请求与重定向的一个cheatsheep: 1.转发 1)完成一次转发,用户浏览器发送一次请求 2)转发之后,浏览器URL地址栏不改变(服务器帮忙完成) 3)请求域中数据不丢失 4)服务器行为 5)当前应用范围内 2.重定向 1)完成一次重定向,用户浏览器至少发生两次请求 2)重定向之后,浏览器URL地址栏改变(浏览器自己完成) 3)请求域中数据丢失 4)浏览器行为 5)允许定向到应用外,网站支付通常利用重定向技术完成 原文地址:https://www.cnblogs.com

Servlet & JSP - 转发与重定向的区别

本文转载自:http://blog.csdn.net/kobejayandy/article/details/13762043 转发 转发的原理,可以通过下图展示: 浏览器的请求发送给组件 1,组件 1 经过一些处理之后,将 request 和 response 对象 “传递” 给组件 2,由组件 2 继续处理,然后输出响应(当然,也可以继续向其他组件 “传递”),这个传递的过程称之为 “转发”.整个过程只涉及一次浏览器和服务器之间的 “请求-响应” ,转发过程中的组件共享同一个请求 (requ

转发与重定向的区别总结

重定向和转发有一个重要的不同:当使用转发时,JSP容器将使用一个内部的方法来调用目标页面,新的页面继续处理同一个请求,而浏览器将不会知道这个过程. 与之相反,重定向方式的含义是第一个页面通知浏览器发送一个新的页面请求.因为,当你使用重定向时,浏览器中所显示的URL会变成新页面的URL, 而当使用转发时,该URL会保持不变.重定向的速度比转发慢,因为浏览器还得发出一个新的请求.同时,由于重定向方式产生了一个新的请求,所以经过一次重 定向后,request内的对象将无法使用. 怎么选择是重定向还是转

jsp中转发和重定向的区别!

请求是单向的,如果A请求B,之后A请求C的时候 A到B的请求断开! 转发和重定向的区别! 01.转发 request 001.转发是服务器端的行为 002.数据不会丢失 003.url不会发生变化,永远是第一次请求的url 004.每转发一次,作用域延迟一次请求! 02.重定向 response 001.转发是客户端的行为 002.数据会丢失 003.url会发生变化,永远是最后一次请求的url 004.至少两次访问服务器

[原创]java WEB学习笔记15:域对象的属性操作(pageContext,request,session,application) 及 请求的重定向和转发

本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 ---------------------------------

http页面转发和重定向的区别

一.调用方式 我们知道,在servlet中调用转发.重定向的语句如下:request.getRequestDispatcher("new.jsp").forward(request, response);//转发到new.jspresponse.sendRedirect("new.jsp");//重定向到new.jsp 在jsp页面中你也会看到通过下面的方式实现转发:<jsp:forward page="apage.jsp" /> 当