00:00
哦,请求重定向,请求重定向是什么意思呢?咱们先把这个概念呢了解一下。请求重定向是指。是指客户端给。服务器发请求,哎,然后呢,服务器服务器告诉客户端说我给你一个新地址,你去新的地址。访问。叫请求重定向啊,那为什么要去一个新的地址呢?空弧咱们简单说明一下啊,因为这个什么呢?因为之前的地址啊,可能已经被废弃,已经被废弃,我不知道大家有没有遇到过这个情况啊,就比如说你去某个店,银行啊或者饭店,他们搬迁啊,一般在门口上他会贴个什么,是不是贴个告示,搬迁的告示,他会告诉他我搬迁,并且同时告诉你现在具体在哪里吧,就这个东西特别像这个请求重对下,我给你画个图说明一下啊,就比如说这边哪它是客户端的,这边是客户端。
01:18
啊啊浏览器嘛,是吧,然后这边呢是服务器。哎,服务器别着急哈。好了,然后大家注意看一下啊,服务器上一开始的时候啊,它有一个程序叫做response,写到这里。RESPONSE1程序,然后呢,这是个很老的程序,随着时间的推移,大家注意看到,随着时间的推移。和项目的不断更新迭代。
02:07
诶迭代啊,就更新嘛哈,不断的更新和升级。哎,那么棒子一这个接口慢慢。对,废弃了。有什么呢?新的接口所取代,大家看这种情况GK里是不是也有啊是吧,这个这个就不能用了。这就不能用了啊好,那下面呢,就会出现一个新的,把它取代掉哎。Respond on。OK,这是一个啊。我错了。我现在内容打掉啊,那么二呢,就是取代了一的内容。RESPONSE2程序呀,那么取代了RESPONSE1,那么功能呢,更。
03:07
完善完善是吧,嗯,然后安全性更高。啊,就这样子,然后效率更快,大概就这个意思了啊好,但是一开始的时候用户他不知道啊,用户一上来还是那啥呀,还是找他。呃,工程路径,哎,然后这里呢,是RESPONSE1,他还请求他看见吧,他不知道啊,他还是去请求他,那么请求他的时候,你想一想,个时候他是不是肯定不会得到一个正确的结果呀,所以这个时候RESPONSE1有义务干啥。一有义务告诉客户端两件事情,就是有义务是吧,告诉。客户端。我以。
04:02
搬迁能理解吧,并且告知。新的地址对吧?好了,那么告诉他你搬迁怎么做呀,就是响应码302表示我已经搬迁了。啊,响应马上零二就表示3000,那么新的地址怎么告诉他响应头。LOCATION2个信息就组成了客户端需要的一个结果,你看啊,302表示我已经搬迁了。总对象嘛,对吧,那呢,就是新的地址好,那这个时候它需要返回。返回什么东西,两个响应状态码。302还有location响应头星地址就这样子好了,那浏览器收到这个响应以后,那怎么办解析啊。
05:06
解析易一的结果啊,知道已经搬迁。搬迁,那么再次发起新地址的请求能理解吧?他肯定要再次发起啊,要不然他这个事没完成呢,他怎么办?再一次一次再一次请求他。啊,当然这一次的地址呢,就是。新的地址啊,就是新地址吧,我就写新地址了,就新地址你可以是这一是吧,新地址就这样啊,那就是他了,然后呢,他把最终那个结果呢给你返回。啊。收到最终的发挥。啊解析展示在页面上,就这啊解析展示在页面上,这个操作整个流程下来叫做求重一下。
06:08
重定向你看到了吗?咱们上午说的是转发我们请求给他,他是不是把这个东西交给他了,转过去了是吧?那重定向是什么?重定向就是我客户端过去再回来,本来我是找他的结构变成找他是不是从定个向啊,定向啊,这叫做请求重定向。好,20。嫁出。啊,然后给它画个散啊OK好了,那么我们就演示一下这个请求统计项法,那么我们这个请求统计项啊,服务器啊,至少需要两个完成,那我们就来写一下。呃,我们在这边啊,写一个叫做一啊,然后呢,它继承HTP。
07:00
读的方法,好,呃,然后我到这里打一句话,打如说成。到此一游。哪的?啊,EU对吧,啊EU啊EU response e,然后从向怎么做呀,注意看啊,这里边大什么设置响应状态,哪个响应图放这两个东西怎么做,你看我们说所有设置给客户端的东西都是不是通过response来做讲应是吧,来点set状态。状态码你翻译一下看懂了吧,状态码那是多少啊,302设置响应状态码,302表示从定向,也就是已搬迁是吧。啊,然后接着设置响应头,响应头呢,Louis棒子点set这个handle就是什么东西呢?Location location翻译过来啥意思知道吧,这应该很直观吧,位置地址嘛,对吧?呃,新的地址嘛,然后哎呀,它编译的特别快,我下次我就先写它行来这个地址呢,是不是HTTP冒号双斜线local host8080,然后零七下划线多少啊啊,就这个地址吧,好,那这是哎,设置响应头。
08:37
啊,说明心的地址在哪里是吧,这个位置,那咱们是不是还需要二啊,啊这准备一下,嗯,别着急啊,我在这里先先复制是不是也行啊,还行,复制很快呢,走你。啊,那RESPONSE2,那RESPONSE2干啥?然后把这个删了,好,咱们RESPONSE2的话,是不是真正处理用户这个请求啊,咱们就给他回点信息嘛,咱们就说response点点get right.right吧。
09:15
啊就什么呢啊,这可以吧,我觉得个结果吧,哎,实计一下就行了,那现在呢,我们到外部点餐门是把这两个配置一下啊变配。来来往下一下复制一下啊,复制一下,呃,这个呢是RESPONSE1RESPONSE1RESPONSE1名首字母小写啊。然后再复制一份,这是二都改成二了。好了有了啊,那现在大家注意看一下啊,咱们的代码都已经准备好了,那我是应该咋请求啊,怎么去访问这个东西,看到效果。
10:04
我按照这个图的示意,我是不是应该从上面访问访问一对吧?啊访问一,你直接访问它是不是没有这同对象的效果了,直接访问一啊,嗯,来我重新部署一下。啊,别忘了啊,我忘了又又又没显示出来效果,诶这是不是成功了,成功以后我的这边访问的是。一注意看我敲回车,他是不是看到是很好的个结果了,那么请看啊,我们看一些细节,看请求你的细节,第一次请求的时候,你看响应是不302呀,或者说你看这边也行,响应是302。哎,然后是不是还有个no小一头告诉你是请地址,然后服务器收到这个东西之后解析哦,给到你搬家了是吧,他开始发第二次请求,你看这个鼠标提示的时候,这个地址是不是跟location地址一模一样,就这样他就开始发第二次请求,然后把结果给你返回。
11:11
这就是请求错误定价。啊,这就是请求统计项,那么我们再看一些细节,加看一些细节哈,那请求统立项都有哪些特点呢?来看一下哈。这是不是有点大呀,16行不行,差不多往后挪一点点差不多了,哎,好,他们有哪些特点呢?来请看一下。有哪些特点?首先第一个浏览器地址栏,咱们刚刚敲的是谁?一还记得吧,现在变成了二,那就说明地址栏有变化对吧。浏览器地址答会发生变化,第二它是几次请求?对,咱们看到下面是不是两次请求啊啊,每一次请求都会有记录哈,那么他是两次请求。
12:09
从这个图当中其实也能看得出来,一去一回是不是一次请求是吧,给服务器发消息是请求嘛,服务器给我发消息是响应嘛,这不是两次吗?好,第三。共享动数据吗?不共享或是域中的数据啥意思?就是你如果在这个RESPONSE1里面呢,给它保存一些数据,report.set这没有看见吗?哎,他如说T。哎,这个一,诶,那在里面能得到这个东西吗?我看一下哈,我再次打印啊,叫做request.get啊刚刚那个PP吧,你看那个值有没有就知道了哈,我再重新部署一下。
13:06
然后呢,差不多了啊,他应该就成功了是吧,他就有成功显示了,然后一走能得到吗?得不到啊得不到啊,OK,这咱知道上不共享,最不能运动数据,为啥呀,得大家注意啊,我们说我们cat每次收到请求,就会把请求过来的数据解析好,封装成为一个的对象,能理解吗?每次请求之内都会封装成为一个。那么你你想想啊,第一次有一个像,我把数据放在这里,他离开了,第二次进来是不是又是一个新的对像,那我在这里怎么可能取得到数据呢?能理解吧,它取不到了啊哎,接着第四点能不能跳到B下呢,哪个呀,注意看啊,这里面能不能进来。
14:05
注意看,我现在把这个phone HTML放进来,你说他能不能进来呢?我把这个地址改一改,你看看效果,那这时候怎么办,Web-INF。哎,我先复制一份吧,上面这个我我嗯注销了。看下面好一点,然后这是啥呀,这是不是那个点H没有啊,没错吧,好,你说他能进来吗?请看。将回车。地址是没有做的,但是不是进不来啊,为什么进不来,你想一想看这个图,所以你想想啊,你第二次把地址发给我,第次请求是不是还是浏览器给客户服务器发的,那我们说这个目录we info目录是不是受保护的,浏览器无法直接访问,那你现在第二次请求是不是还是浏览器发过来的,可他还是进不来。
15:05
但还是进不来啊,接着再来看最后一个点。有什么东西呢,就是不能。法问杠下的资源。第五。看能不能返回当前工程以外的资源呢?比如说我跳去百度。啊对,这是可以的啊,来我们重新发一下行了。来斯车其实就可以了,只是因为咱们没有联网,是不卡住了,不知道卡久,我换个地址吧,这个是能过去的吧,啊,那就换个地址吧,这个地址卡太久了,咱们这个网络不能联网。Location location吧,8080,嗯,就这个地址可以吧,你看看能不能去就行了吧,我也不管了啊好再来这是可以去的啊,所以说咱们这没有没有这东西啊,叫回车。
16:12
诶。我是不是还没部署成呢,刚刚成功是吗?再来一次啊来。他可能还是缓存那个包还没有复制过去,稍等一下啊敲,他是不是过来了,过来拿啊。就你访问工程以外的资源是可以的,给他知道一下啊,那么可以访问工程外的资源没问题,可以。好,OK,这个是请求重定向。
我来说两句