zoukankan
html css js c++ java
请求转发和重定向区别
1.从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的
URL
,把那个
URL
的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址. redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的
URL
.
2.从数据共享来说 forward:转发页面和转发到的页面可以共享request里面的数据. redirect:不能共享数据.
3.从运用地方来说 forward:一般用于用户登陆的时候,根据角色转发到相应的模块. redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网站等.
4.从效率来说 forward:高. redirect:低.
本质区别 解释一
一句话,转发是服务器行为,重定向是客户端行为。
为什么这样说呢,这就要看两个动作的工作流程:
转发过程:客户浏览器发送
http请求
----》web服务器接受此请求--》调用内部的一个方法在容器内部完成请求处理和转发动作----》将目标资源 发送给客户;在这里,转发的路径必须是同一个web容器下的url,其不能转向到其他的web路径上去,中间传递的是自己的容器内的request。在客 户浏览器路径栏显示的仍然是其
第一次
访问的路径,也就是说客户是感觉不到服务器做了转发的。转发行为是浏览器只做了一次访问请求。
重定向过程:客户浏览器发送
http请求
----》web服务器接受后发送302状态码响应及对应新的location给客户浏览器--》客户浏览器发现 是302响应,则自动再发送一个新的
http请求
,请求url是新的location地址----》服务器根据此请求寻找资源并发送给客户。在这里 location可以重定向到任意URL,既然是浏览器重新发出了请求,则就没有什么request传递的概念了。在客户浏览器路径栏显示的是其重定向的 路径,客户可以观察到地址的变化的。重定向行为是浏览器做了至少两次的访问请求的。
解释二
重定向,其实是两次request,
第一次
,客户端request A,服务器响应,并response回来,告诉浏览器,你应该去B。这个时候
IE
可以看到地址变了,而且历史的回退按钮也亮了。重定向可以访问自己web应用以外的资源。在重定向的过程中,传输的信息会被丢失。
解释三
假设你去办理某个执照, 重定向:你先去了A局,A局的人说:“这个事情不归我们管,去B局”,然后,你就从A退了出来,自己乘车去了B局。 转发:你先去了A局,A局看了以后,知道这个事情其实应该B局来管,但是他没有把你退回来,而是让你坐一会儿,自己到后面办公室联系了B的人,让他们办好后,送了过来。
查看全文
相关阅读:
hdu 4825 Xor Sum(01字典树模版题)
poj 2778 DNA Sequence(ac自动机+矩阵快速幂)
codeforces 626 G. Raffles(线段树+思维+贪心)
hdu 2615 Division(暴力)
hdu 6092 Rikka with Subset(多重背包)
codeforces 688 E. The Values You Can Make(01背包+思维)
JavaUtil smtp 邮件发送
JavaUtil 处理Base64的图片上传
Centos7 在apache+php7环境下 安装 Discuz!X3.4
Centos7 安装 apache + php7.0 环境
原文地址:https://www.cnblogs.com/lbloveab/p/7326255.html
最新文章
LuoguP3045牛券Cow Coupons
CF1169(div2)题解报告
Educational Codeforces Round 61
CFEducational Codeforces Round 66题解报告
# 8.19考试总结
CF Round #580(div2)题解报告
cccc初赛 L3-003 长城
UVa 1627
1626
1625
热门文章
11584
UVa11400
最长上升子序列问题 nlogn 实现算法的简述
12563
12174
12627
codeforces D. Mahmoud and Ehab and the binary string(二分)
codeforces 862 C. Mahmoud and Ehab and the xor(构造)
hdu 6215 Brute Force Sorting(模拟)
codeforces 842 D. Vitya and Strange Lesson(01字典树+思维+贪心)
Copyright © 2011-2022 走看看