首页 > 其他 > 详细

请求转发与重定向略解

时间:2020-09-24 16:09:33      阅读:35      评论:0      收藏:0      [点我收藏+]

  从字面的意思理解,重定向,“重”,意味着再一次。就是说,请求转发是一次请求,而重定向就是两次请求。好了,已经解释完了。

技术分享图片

 

   好,废话不多说,直接上图片。先来看一下请求转发的原理图。

技术分享图片

实现请求转发的特点
  1. 用户请求了一次,所以url不变只有一个。由于是1次请求,OneServlet与TwoServlet共享同一个request和response.

  2. 页面跳转在服务器发生的,只能跳转到服务器内部的资源,无法跳转到服务器外部的资源

此时请求转发是属于服务器行为。

重定向原理图如下:

技术分享图片

重定向跳转的特点
  1. 用户请求了2次,url就不一样了。跳转前后的2个资源不共享request和response

  2. 跳转的动作是浏览器发生的,意味着可以跳转到任何资源(服务器的内部与外部都可以)

与请求转发不同的是,浏览器第一次发出请求,服务器接收到第一次请求后,会返回302以及一个地址,浏览器再根据这个地址进行第二次访问。

转发:跳转前后的2个资源共享同一个request和response,以后可以资源之间可以传递数据

重定向:跳转前后的2个资源不共享request和response,不能传递数据

   举个生活例子。好比如去商店买东西。

1、假如你想要一包辣条,然后老板从一个货架上拿了一包辣条给你(请求转发);

2、或者刚好老板的店辣条卖完了,然后跟你说对面的商店有,叫你去那里买,最后你去了对面的商店买到了辣条(重定向)。

上面的例子,你=浏览器,老板=服务器,这样一来就很容易理解请求转发和重定向了。并且你会发现,重定向的效率会第一点哦,毕竟请求了两次啊。

请求转发与重定向略解

原文:https://www.cnblogs.com/qinjunlin/p/13722949.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!