重定向与转发的区别
来源:互联网 发布:ipadmini2网络不稳定 编辑:程序博客网 时间:2024/06/03 10:29
重定向与转发的区别
一、API调用的区别
转发:
request.getRequestDispatcher("/...").forward(request,response);
重定向:
response.sendRedirect("/...");或者response.setStatue(302);response.setHeaders("location","/...");
二、流程上的区别
转发流程:
- 1.由客户端发起一个HTTP请求。
- 2.服务端ServletA接收到HTTP请求,调用Web应用内部的ServletB,将request请求传递或转发出去。
- 3.ServletB接收到转发的信息,处理完之后,将传递给ServletA。
- 4.ServletA就将ServletB的信息响应给服务器。
注意:转发是在服务器内部的发生的,而且是在同一个Web应用下的Servlet之间发生的,对于客户端来说,只有一次请求和响应
重定向流程:
- 1.有客户端发起HTTP请求
- 2.服务端接收到请求后,服务端告诉客户端去访问sendRedirect()中的指定的location,并且响应给客户端。
- 3.客户端接收到服务器的响应后,再次发送HTTP请求(请求的是sendRedirect()中的指定的location)。
- 4.服务端(和上面说的服务端可以不是同一个)接收到请求后,给出响应。
注意:重定向是客户端经过2次或多次对服务器进行访问的,2次或多次访问的的服务器可以是不一样的
总结:转发是服务器行为,重定向是客户端行为,转发是request对象调用api处理,重定向是response对象调用api处理
0 0
- 转发与重定向的区别
- 转发与重定向的区别
- 转发与重定向的区别
- 请求转发与重定向的区别
- 请求转发与重定向的区别:
- 请求转发与重定向的区别
- 请求重定向与转发的区别
- 重定向与转发的区别
- jsp转发与重定向的区别
- 转发与重定向的区别
- JSPServlet转发与重定向的区别
- 转发与重定向的区别
- 转发与重定向的区别
- 《请求转发与重定向的区别》
- JAVA转发与重定向的区别
- 转发与重定向的区别
- 请求转发与重定向的区别:
- 转发与重定向大的区别
- libevent
- 【LeetCode】144. Binary Tree Preorder Traversal
- Android开发:最全面、最易懂的Webview详解
- Java多线程线程池(3)--线程池原理
- 深入理解Java String
- 重定向与转发的区别
- android高级动画——贝塞尔曲线
- centos6.4搭建apache+mysql+php环境
- MySQL数据库视图总结
- 5-8 计算指数 (5分)
- B/S构架测试
- 33、预处理指令
- Stack and heap overflow detection at runtime via behavior analysis and Pin
- shell中的(),{}几种语法用法