00:00
先说这个啊。第十个支点十,关于我们说的这个从定向这个解决方案,那么在这个方案里边呢?首先第一个是什么呢?先看看其相关的工作原理,这玩意儿怎么解决呢?怎么让用户手动发起一次请求,就能把所有T都依次调用呢?好画一个从定向解决方案的流程图。我们看一下啊,那么这边呢,是我们的这个浏览器啊,这边是浏览器好了,浏览器前面做的是什么呢?做的是一个真实的用户啊,一个小用户站浏览器前面,准备进入浏览器啊,发请求啊,调资源文件。那么这边呢,是咱们的服务端的计算机啊,我们看一下在这里边,这是我们当前服务端的计算机好了,那么在这个服务端计算机这里边呢,过来帮我们写两个threat,一个是什么呢?一个是Y好了,那么另外一个是谁呀?另外一个是。
01:14
好了,过来to做出来行了,那我们看看啊,用户的需求是什么呢?先把需求写上了,用户的需求他呢想吃啊,我们看一下说呢,想吃什么呢?这个韭菜啊,炒鸡蛋啊,这里边行了,那么我们的班他在执行的时候呢,那么他完成什么呢?他将负责负责是洗韭菜的这几个功能。而凸出的呢,他负责什么,他负责是韭菜炒鸡蛋啊炒鸡蛋好了在这,那么怎么办呢?诶我们看一下,首先我们的用户呢,他呀用户啊,手动的去通知通知浏览器干嘛呢,去访问serve life。
02:08
那怎么触动啊,在地址中写地址,或者点击超链接,或者点击form,诶,这都是手动,那么我们的浏览器呢,把请求哎发给了one set,好在这,那么等到one工作完毕之后呢,他一合计啊,这事没完呢,人家想吃韭菜炒鸡蛋,我只不过把韭菜洗干净了,炒鸡蛋这活该老二来做。那么怎么办呢?在这儿咱们就写上啊。说事情是这样的,我们的这个one threat他在工作完毕后,那么此时呢,干嘛呢?他要将我们这个to serve light它的这个地址,要把这个地址呢?那么写入到哪里去呢?写入到我们响应投中的,写入到响应投中的什么呢?Location中来交给谁呢?来交给我们的浏览器来在这好了,那么此时我们版块沟通完毕之后,副端将打回一个什么呢?打回一个响应包。
03:21
那么在这个响应包里边,我们去看看啊,首先呢,是我们的状态行,哎,状态行里边放状态码,然后接下来呢,是什么呢?是我们的响应头,哎,响应头,那么在这个响应头里边呢,此时它将会有一个什么呢?出现一个叫做location的属性,而在这个属性里边,它实际放的是什么呢?放的是to serve,它的这个地址,哎,它的地址好了,然后是空白行,然后是显应体。然后在这响应包包呢,就推给了浏览器啊,推给了浏览器行了,那么在这里边我们看看,根据我们之前所讲的,如果我们是在响应头的location中放了个地址,那么我们的tomcad也不会闲着,它会在什么呢?在我们响应报的状态行的状态行里边放一个状态码,什么状态码呢?302,诶他要放一个什么呢?302的状态码。
04:20
我们看下同学写上写上说呢,302302状态码在这,刚刚我们讲过,不知道大家还记不记得啊,在这302。好,那么接下来往下看过来,那么现在呢,浏览器它呀,接收到了这个小红包,好了,那么此时呢,看了读取到了什么呢?读取到了这个302的状态码,动态码,但但多这动态说他他知道什么事呢?他知道呀,在这个响应包的响应题里边是没有东西的,在响应体是没有东西的,但是呢,在响应投资里边的location中却有一个地址。
05:07
它它读取到这个这个存波动态法3.2之后干嘛呢?那么此时它会立刻立刻自动的,那么根据根据我们响应头,根据响应头中的这个location中的这个地址来发起什么呢?第二次的请求。好了,那么此时我们的浏览器发起了第二次请求,但是这次请求各位,它是用户来发送的吗?不是,那么在里边看好了我们的这个第二次的请求,可是人家什么呢?浏览器自动发送的啊,自动去发送。哎,在这儿收像器自动发送的,那么two出收到请求之后开始炒鸡蛋,然后把结果呢,最终返回给我们的这个用户,你看在这次请求过程中呀,虽然失及到两个S参与其中,那么至始至终我们的用户手动通过浏览器发起了几次请求呢?就一次,是不是降低了我们的获得服务的成本啊,降低了用户获得服务的成本,也降低了其使用的难度,那么这张图呢,我们给大家保存一下。
06:29
它就是从定向解决方案的原理图,我们看一下它呢,是我们说的这个从定向解决方案啊,这个方案它的这个原理图哎保存,那么接下来我们把它变成什么呢?文字形式来处理一下,我们看看啊。说我们的用户啊,说我们的这个用户,他第一次通过手动的方式啊,咱们写上看,通过这个手动的方式来通知浏览器去访问我们的MYOK。
07:09
然后在这里边,那么当我们的这个他呀工作完毕后,那么他呢,要将我们的这个to serve,它的这个地址写入到哪里呢?写入到我们响应头,写入到响应头中的location这个属性中好了,那么这里边会导致什么呢?导致我们的这个CA。导致我们的to态Tom Tom态,那么它要将什么呢?它要将我们说的这个302的这个状态码,状态码接收哪哪里呢?接收到我们的这个状态中好了,行了,那么在这个浏览器去接收到这个响应包之后,它呢,会读取到什么呢?读取到这个302的状态码,就知道这状态码,那么此时我们浏览器将会自动的根据响应头中location属性的地址,自动地址来发起什么呢?我们的第二次请求,诶,那么来干嘛呢?来访问访问我们说的to,去完成,去完成什么呢?我们请求中剩余的任务啊,剩余的任务诶,那。
08:36
那这个是什么呀?从定向的工作原理好了,那么我们看看在这个原理中它的好处,我们刚才已经说了,再重复一遍,无论这个请求里边有多少个sir参与其中,我们的用户至始至终只需要干嘛呢?手动的发起一次请求就可以了,那么剩下的这些请求呢,都是浏览器自动发送,哎,那么就简单了,就简单了好,那么往下看一下制其原理,那么它的具体的实线命令是什么样子呢?说到这儿同学们可能想到了谁啊,我们见过这个命令谁啊,response.send redirect啊,Direct这个命令,然后里边写的是什么呢?我们的这个请求地址,那么这个命令干嘛用的?将这个地址写入,把它写入到什么呢?我们。
09:36
响应包中的这个响应头,响应头里的响应头中的什么呢?Location这个属性作用,哎,在这就这么一个命令,你看我们大家讲过啊,越到我们后面呢,我们的某一个命令里边所包含的原理以及与前面之点关联就变得更加紧密,王老师讲可能讲了一节课,最后边落地一行命令啊,在这儿好了啊,行了。
10:02
那么就是它的这个具体的实现,这叫做从定向解决算案,那么接下来呢,通过一段小程序让咱们去演示一下啊好了,那么我们在这里边呢,新建一个网站出来好了,然后写着网站级别,然后在这里边呢,咱们就写一下,说什么呢?这是第十个,好呃,这里边写成什么呢?关于从定下这个解决方案啊在这啊,保存一下,那么我们在第十个网站里边呢,我们建两个蒜,一个喜喜酒菜,一个炒鸡蛋,我们看看先来第一个,现在报名com点那么BG啊,Power node点咱们写上controller,然后在这里边呢,我们看一下,我们写上one serve left好了,保存,那么这里边呢,写上这个它的这个什么对外的地址啊,就是one threat,行了,然后我们再去建第二个threat,出来啊。
11:03
我们看一下啊。说呢,把第二也建出来好了,老二来to threat行了,然后在这里边呢,写上它的这个地址,说什么呢?S map撇to斜线to好了,开始写代码one,我们就做它的这个do get这个方法行了,出来,那我们写上so输出,说什么呢?说这个one threat他呢负责干嘛呢?负责呀洗韭菜,哎,咱们写上他负责洗韭菜好了,然后呢,他在洗完韭菜之后呢,活没干完呢,那在这里边在里这解这从地下解决方案在这啊从下解决方案行了干嘛呢?我们把响变叫过来,说来你负责干嘛呢?你负责把我们的这个图片R地址写到响通的评审中,那么怎么写呢?是这么写。
12:05
的斜线网站名,斜线资源文件名在这啊。说这里边啊,它的这个地址格式啊,它的这个地址格式怎么写呢?斜线,我们说网站名称啊,斜线网站名,然后斜线资源文件名,固定的就这个就行了,然后我们再写,我们说这个这个这个to threat,那to在覆盖方法里边,So做输出,那写上啊说呢,这个to serve light怎么样呢?人家负责负责干嘛呢,之后呢,韭菜,哎韭菜,然后炒鸡蛋,哎,我们看韭蛋呢,我们说炒鸡蛋,我鸡蛋行了,保存,保存完了之后呢,把这个网站发布给tomcad,让他做管理好了,那么我找tomca跟他讲来,你去管理第十个网站,第十网站江湖人称MYB好保存,然后呢,告诉这个idea这个网站。
13:12
有什么修改你呀,做同步处理好,我们启动一下看看效果啊。说比如说我现在就办一个用户,我想吃韭菜炒鸡蛋,那么让他们呢,来帮我呢处理一下啊,我们看看啊。行了,那么弄完之后呢,L12键我们看一下,那么我呢,先访问man好了,走,你看我的必然是不是发生了变化,发生变化变成to了,对不对,好了,那么路览器发生几次请求,一次两次好了,那么在负端这里边呢,诶,万福特西韭菜图福的韭菜炒鸡蛋,看到没有,那么在这个过程中我发起了几次请求呢?我实际上就发起了一次,第二次是浏览器自己发送的,那么这就是屏幕像它降低了用户获得服务的难度,用来提供提高什么呀,使用感受的一种技术。好了,那么接下来我们再往下去看看,往下去看看在里边啊,好了。
14:21
在这,那么接下来我们需要给大家聊聊啊,聊聊什么呢?从定向这个方案它的什么呢?它的这个特征啊,说它的这个特征是什么,它有哪些基本特征好了,那么首先呢,第一个先说说什么呢?先说说关于这个请求地址啊,请求地址好了,请求地址。那么在重定向的方案中,那么我们既可以把什么呢?把当前网站内部的这个资源文件地址啊,这面地址去发送给浏览器好了,那么也可以把什么呢?把我们说其他网站中的这个资源文件地址发送给浏览器,为什么呢?因为浏览器本来就可以根据地址向任意网站去索要内容,那么如果是当前网站内部的这个资源面地址,它的格式是什么呢?斜线网站名,斜线资源文件好了,那么如果是其他网站资享能地址呢?你得写完整版HTP,然后呢,写什么呢?写上我们说的这个IP地址啊,写上IP地址,然后写上什么呢?
15:44
写上这个端口号端口号,然后写上我们说这个网站的名称,然后写上我们说的资源文件名在这,那咱们试试啊,刚才呢,我们的这个one sort它呢,是不是把当前网站内部的资源文件地址写到显像图中了,诶这是这个格式,那么如果让他访让让他去访问其他网站呢?那么在这里边你啊可以这么写,Re,我们看一下resp点三的readdire,那么从ERSP冒号3W点100IDU,这是干嘛呢?各个浏览器去向百度发起默认请求,要百度的默认欢迎文件,好了,这改完之后过来小绿光一飘,行了,那我们看一下,那么在这里边我们访问one threat,啊走,看B点变成百度了吧,啊变成度,所以它的这个请求的地址呢,GK是当前网站内。
16:44
的资源文地址也可以是其他网站的资源,跟地址写的时候格式是有区分的,好了这是第一个,那么第二个是什么呢?我们看一下啊请求的次数,诶,我们看一下请求的次数,请求的次数,那么在从定向解决方案中,浏览器会发送多少次请求呢?
17:11
那么这个呢,实际上答案呢,在这张图里边,在一次重定向的这个过程中,浏览器所发生的启用次数至少在两次以上。这不第一次吗?这不第二次吗?哎,在这咱们写上说呢,呃,我们这个浏览器它至少呢要发送我们说的两次请求好了,但是我们说只有什么呢?只有第一次请求,第一次请求呢,它呢是我们用户手动发送的,那么后续的这个请求,它实际上都是浏览器来自动发送的。在这要搞清楚啊,搞清楚好了,然后第三个第三个第三个问题啊。
18:05
请求方式我们看第三个啊,我们说了什么呢?说一说啊这个请求方式,哎,请求方式,那么这里的请求方式主要指的是谁呢?主要指的是to th,这个通过从定向方案来访问的资源文件,To主要指它的请求方式,它的请方式,它的方式是get呢各位。它的方式是get呢,还是我们说的pose呢?哎,在这里吧,大家一起想想看这个点各位。说在这个在从立项过程中,To threat,它接收的请求方式是get还是post呢?来,大家可以把答案写一写啊,想想to出来,记取方式,Get还是post想一想。
19:00
啊post啊,干啊干了干了干了,哎,好了好了啊,嗯,我们看,行行行行行,大家不要打了,考虑一下王福胜同学的这个内心感受啊,我们要考虑王福胜感受这里边啊,你们不能太残忍了,太残忍了,你看不能这么残忍吧啊王福胜打球pose下面一堆该该该该该该该该啊你们太残忍了,批评你们啊王思胜今晚有个什么三长两短,你们得负责任,我跟你讲啊,不是要想开点,想开点没事啊,没事啊,没事啊,我们看一下啊,好吧,嗯,答案是盖,为什么呢?因为说盖的人多嘛,啊,当然不是这样子,你看啊。在这里边我们再看一眼啊,再看一眼啊,我们现在呢,先去访问man好了,发起第一次请求,好看这里边诶第二次请求,那么第二次请求呢,它是通过浏览器的地址栏来发送的,那么我们之前讲过,但凡是浏览器的地址栏来命令浏览器他请求去求方式一定是get get好了,所以我们去说这个事情啊,请求方式说在这个从定咱们看啊,咱们写上说呀,在这个从定向这个解决的这个方案中,那么它呢,是通过地址栏来通知浏览器发起下一次的请求的。
20:32
那么因此呢,因此我们说通过啊,这个从定向这个解决方案,通过这种方案来调用的资源文件,他们所接收的请求方式,他们所接收的这个请求方式一定是什么呢?一定是我们说的get啊不事没事想开点,比如说这里边前半句话你可能理解不了,负12你就记住后面记住它老杨说的通过从定向方案来调用案键循方式一定是干你记住后半句就行,哎,这里边行了。
21:16
然后在这里边这个呢,就是什么呢?就是我们这个从定向方案的相关的特征啊,求地值怎么写,请求次数有多少次,诶请求方式是什么,哎在这尤其是最后一个,最后一个呢,你了解他呢,避免你在未来的开发过程中出现什么呢?405的这个状态嘛,哎请求方式不一致了,哎就出现405了啊好了,那么在这里边啊,咱们说说啊,这是从定向的解决方案。好了它的特征,那么接下来再往下说说啊,往下说说过来,那么我们看看啊,第四个我们说一说什么呢?说一说关于它的这个缺点,哎,它有点小缺点,它有啥缺点呢?嗯,我给大家画一个小草图,我们看一看啊CTRL。
22:10
拼的啊,我们看看,比如说我们这边啊,诶这是一个浏览器,哎,浏览器好了,我们看看利用这样图呢,说什么呢,说说我们说呀,从定向他的这个缺点啊,说浏览器上面干嘛呢,有一个用户,有一个用户在这一放好了。啊用户,那么这个哥们要发什么请求呢?诶说说他的需求,哎,他的需求我们看需求好了,他要干嘛呢?他要割包皮啊当然想割包皮,哎需求割包皮说到这尾巴说要干嘛呢?这边它有个包皮长腿上了,哎在这好了这包皮那么这边呢,我们看看啊这边啊是咱们的这个什么呢?服务端计算机,哎在这。
23:06
答案写上,呃,服务端这个计算机,那么相当于什么呢?相当于我们说的医院,哎医院行了,那么医院里边呢,诶,比如说有两种大夫,有两种大夫我们看看啊在这,那么第一个大夫呢,他呢是one serve life。那么这个method相当于什么大夫呢?麻醉师,哎,我们看看,那么写上麻醉师行了,那么在这里边呢?他呢,负责什么呢?负责我们说的麻醉,哎,好了,然后还有第二个threat to serve left,那么他呢,相当是什么呢?相当于我们说外科,外科大夫,诶,啊,外科大夫,外啊,外科大夫,那么在这里边啊,外科戴夫,诶,戴夫好了,那他负责干什么呢?割包皮,你说这个请求de里他俩协同好了。那么此时如果用从定向方案是什么样子呢?比如这哥们先发出第一个请求,生动方案,第一个请求在这里边。
24:18
说什么呢,说呀,呃,大夫帮我实施麻醉,行了,这个大夫啊,上去啪一针麻了,下半身就麻了,哎,下半身就麻了,动不了了,动了了,然后这时候大夫呢,给他一个小纸条,说什么呢,你爬到七楼,你爬到七楼找小二大夫帮你割包皮,诶过去过去。那么想想这哥们儿现在这个心里是多么的阴暗,是多的悲伤,那他们就跟刚才王福胜那个心情差不多是一样的,你感觉啊,啊,这里边儿,那么此时这哥们干嘛呢?诶,发起第二次祈求,想想你在医院里边正走着呢,发现有人揪你裤腿,发现什么呢?有一个人啊,趴在走廊里边捉你裤腿,哎,大哥,这是几楼了,蹬到七楼啊,我要到七楼割包皮,慎不慎,得慌慎,实际上在这里边呢,这个虽然讲的有点开玩笑了,但是它体现出了什么呢?从内向一个问题,什么呀,浪费时间。
25:25
我的这个浏览器在西藏,服务器呢,在香港好吗?我发第一次请求从西藏到香港,好请求过去,然后再回来一个响应包,从香港回西藏,然后再从西藏去香港,多大点屁事儿啊,一来一回浪费时间,还浪费时间,所以这是我们说什么呢?从定向啊,从定向的这个什么呢?一个缺点,哎,我还真割过包皮,不瞒各位,我还割过包皮,哎,就里边好了,就是我不能割过包皮啊,那它的缺点是什么呢?说在这里边呢,呃,我们的这个从定向这个解决方案啊,这个方案,那么它呢,需要在浏览器与我们的服务端啊,与我们说这个服务器吧,服务器之间来进行什么呢?进行多次的啊,进行多次的这个往返。
26:25
那么这里边干嘛呢?我们说此时大量的这个时间,它呢,实际上是消耗在什么呢?消耗在我们的这个往返的次数上的次数,那这里边呢,它会增加什么呢?用户等待,等待这个服务的什么呢?这个时间啊。说我玩吃鸡,我啪一啪子弹打过去,然后卡在那块了,第二天早上才喊到结果,哦,你把人爆头了,你说谁玩这个东西是不是一来一回,一来一回受不了,耽误时间很慢啊,这他这个缺点,这大家要记住它好了,那么以上这些呢,就是我们说呀,这个从定向解决方案的公共原理,那么至于说什么是请求转发,咱们明儿个再讲啊,明儿个呢,我们说呀,这个在这里边啊,明天呢,是我们说的二二十八号啊,周二还上课,正常上课行了,今。
我来说两句