重定向与跳转的区别

 重定向是一种特殊的页面,它提供一种运做机制,使得人们在输入该名称进入条目或者点击指向该名称的内部连接时,系统可以自动导航到重定向页面内部指定的另外一相关页面中,从而实现相关页面能够以多个名称进行访问。浏览器

响应重定向与转发相似,但二者有如下区别:服务器

(1)当使用转发时,JSP容器将使用一个内部的方法来调用目标页面,新的页面继续处理同一个请求,而浏览器将不会知道这个过程。与之相反,重定向方式的含义是第一个页面通知浏览器发送一个新的页面请求。由于,当你使用重定向时,浏览器中所显示的URL会变成新页面的URL, 而当使用转发时,该URL会保持不变。ide

(2)重定向的速度比转发慢,由于浏览器还得发出一个新的请求。同时,因为重定向方式产生了一个新的请求,因此通过一次重定向后,request内的对象将没法使用。spa

响应重定向与请求转发的区别:.net

(1)RequstDispatcher对象是一个Web资源的包装器,能够用来把当前请求转发到该资源。这种转发是服务器端控制权的转向,客户端发来的请求将交由新的页面进行处理。使用请求转发,在客户浏览器的地址栏中不会显示转发后的资源地址。使用请求转发能够将前一个页面的数据、状态等信息传到转发的页面。对象

(2)使用响应对象的sendRedirect()方法其实是服务器向浏览器发送的一个特殊的响应头,它命令浏览器链接到新的位置。所以,使用这种方法在浏览器的地址栏中能够看到地址的变化。重定向是做为不一样请求来看待的,所以,全部请求做用域的参数在重定向到下一个页面时会失效。另外,使用sendRedirect()方法重定向时,资源不能位于WEB-INF目录下。资源

相关文章
相关标签/搜索