转发(forward)和重定向(redirect)

最近研究了一下mvc的返回类型,再次看到了熟悉的转发和重定向,于是拿出来辨析一下。
就可见的来说,转发是对用户无感的,最直观的就是浏览器的地址栏不会变动,而重定向则可以看到地址栏的改变。也就是说转发用户只发送了一次请求,而重定向则是两次请求。
重定向的两次请求可视为是互不关联的,对于编码来说,两个请求的request也就会是不同的。
同样也就可以类比出,转发的耗时会比重定向短。
类比一下现实中的借钱,你找a借钱,但是a家里钱归a老婆管,于是有两种情况,一是a想卖你个人情,直接拿了老婆管得钱借给你,这就是转发。另一种情况就是a实在太怕老婆了,于是告诉你,我老婆管钱的,你和她说去吧,于是你又要找a的老婆借一次,这就是重定向。

你可能感兴趣的:(转发(forward)和重定向(redirect))