请求转发和请问重定向的一些区别

来源:互联网 发布:小键盘软件下载 编辑:程序博客网 时间:2024/05/18 15:03

 

请求转发过程:客户浏览器发送http请求→web服务器接受此请求调用内部的一个方法在容器内部完成请求处理和转发动作,而浏览器将不会知道这个过程,浏览器只知道发出了请求并得到了响应;forward的调用者与被调用者之间共享相同的request对象和response对象,他们属于同一个访问请求和相应过程。转发的路径必须是同一个web容器下的url,其不能转向到其他的web路径上去。

 

请求重定向过程:客户浏览器发送http请求→web服务器接受后发送302状态码响应及对应新的location给客户浏览器客户浏览器发现是302响应,则自动再发送一个新的http请求,请求url是新的location地址服务器根据此请求寻找资源并发送给客户。既然是浏览器重新发出的请求,则就没有什么request传递的概念了。请求重定向不仅可以重定向到当前应用程序中的其他资源,还可以重定向到同一个站点上的其他应用程序中的资源,甚至是使用绝对URL重定向到其他站点的资源。

 

 

根据上述两个工作流程可以看出,用request.setAttribute()方法传指时,必须用请求转发才能将值传到下一个页面。

 

 

原创粉丝点击