00:00
好,然后大家来看,那我们刚才咱们是不是来了解了咱们的pair属性,对吧?然后通过什么来匹配请求,映射请求的请求参数来匹配对不对,那它和我们的value跟method不同的,就是method跟value只要满足其中一个就行,但是pairs必须同时满足,能听懂吧?好,那下面呢,我们再来看咱们的最后一个啊,大家看好咱们的headers属性,那什么是headers属性啊,Head咱们在哪见过啊,大家说啊,我们当前咱们的浏览器和服务器之间的交互,是不是必须要按照什么协议来进行交互,HTTB协议,也就是超文本传输协议,对不对?那他就要求了咱们的浏览器向服务器发送请求,要以啊浏览器向服务器发送请求,然后要以请求报文的方式发送,对不对?而我们的这个服务器呢,向浏览器响应数据,是不是也要以响应报文的方式发送?
01:00
对不对?而咱们的请求报文的话,是不是分为请求头,请求题,当然中间还有一个请求空行是不是啊,那请求头是什么格式,大家记不记得啊,咱们上一个阶段讲过,咱们也看过请求头,请求头其实就是键值对结构,大家说是不是啊是吧?好,所以说呢,那咱们的这个has呀,然后它跟我们当前咱们的paras的用法是一模一样的,然后它的这个值也是一个字符串类型的数组,好然后也能够通过咱们下面的这四种表达式干什么,四种表达式来设置我们的请求头信息和请求映射的匹配关系,OK吧,好,什么意思?来咱们先看一下请求报文吧,大家知道怎么怎么看不?F12打开,然后选择network work是不是啊?比如说我们现在咱们来点击这个啊,这个应该是访问不了的吧。
02:00
是不是啊,这个应该是访问不了的啊,因为咱们当前咱们的这个呃页面里面,然后咱们所发送的这个请求所携带的参数就是123456,但是我们当前大家看咱们的请求映射里面要求能是123456吗?不能,那就这样呗,咱们就给它改成是123可不可以啊,可以吧,好,然后咱们来重新部署一下,大家看啊。好,然后咱们现在呢,来刷新,OK,大家看这个时候后边咱们是不是变成123了,然后我们点击之后呢,大家来找到我们的network,然后咱们看这个地方,这不就是我们当前所发送的请求吗?对不对,对吧?然后点击之后大家看这是我们的响应题,这个大家能听懂不?这个是我们当前的响应题,其实这个很好理解,大家想想你请求的是什么,那服务器就得给我响应什么,对不对?那既然我请求的是咱们的success.H7ML,那他就要把success.H7ML整个页面是不是给给我想应到浏览器对不对,对吧?好,然后下面大家再来看,咱们来找到咱们的hes hes是不是表示的咱们的头信息,但是在这个里面,咱们是既包含了咱们的响应头,是不是也包含了我们当前的请求头,能看懂不好,OK啊,那所以说大家。
03:29
想想,那既然咱们是来匹配请求的,那咱们应该是匹配的是请求头信息还是响应头信息啊请求头吧,请求映射是来匹配咱们当前的请求的,所以说应该是通过咱们的请求头信息来匹配请求映射啊,怎么看咱们在这是不是可以点view source来查看咱们的原请求投入信息对不对?这第一行是我们当前咱们的当前请求的一个描述,Get请求请求路径,这是传输的请求参数,咱们用的HTTB协议的版本是1.1对不对,对吧?然后再往下,这是不是就是咱们的请求轴信息了,这冒号之前这是见冒号之后,这是10OK吧,那咱们怎么写的家数?
04:17
比如说咱们就简单写一个测试一下,然后这个东西大家了解一下就行,咱们用的不是很多,OK吧,好来大家来看啊,然后首先呢,咱们在咱们的请求映射里面,还是在这个地方对吧,写一个逗号,然后下面咱们用一个he,然后它的值呢,大家说这里面咱们应该写的这个双引号里面,咱们应该写的是啥呀,是不是咱们的那四种表达式呀,因为我们当前咱们的头信息也是建值,对对不对,对吧?那所以说那我们当前咱们的这四种表达式就变成了什么含义啊。大家说啊,如果我在这来写了一个header,就表示咱们的请求报文中的请求头必须得有header所表示的坚齿,对,能听懂吧,好,如果我在这写了一个叹号,表示请求头中一定不能有这个键,对,OK吧,好,如果说咱们来写的是he,然后等于谁,然后就表示它必须得携带这个什么请求头信息,而且值必须,为什么?如果咱们写的是叹号,等于就表示必须携带,但是值不能,为什么能听懂不好,OK啊,那比如说大家看好,咱们随便找一个,这是咱们的host host是什么意思啊?
05:40
啊,Host是什么意思啊,Host是什么意思?Local host对不对啊,Local host host是不是应该指的是我们当前的一个IP的意思,对不对,对吧?好,然后大家看你看我怎么写,这是我们当前请求头中的一个键值,对,这是件,这是值,那比如说我在这把它,我现在我要这样去写,我要求我当前的请求映射所匹配的请求啊,然后它的请求头中必须携带谁P的这个键,它的值必须为8081,能看懂不能看懂吧?好,那咱们这个东西你得改了吧,这中间你还能写冒号吗?不能,因为咱们说过这两个写法是一样的,我们要想来写一个表达式,中间用什么表示啊,等号表示能听懂吧,所以说在这咱们写个等号OK,完事。
06:38
能看懂不?然后下面那咱们就来测试一下,如果我们的请求头中携带的这个键值对能匹配到不能可以,如果没有携带能匹配到不能不能来下边咱们来重新部署,大家来看啊。首先呢,咱们的请求地址是匹配的,大家来看一下啊,请求地址匹配不匹配匹配对吧?然后咱们的请求参数匹配不匹配匹配,那下面是不是就要来看我们当前的请求报文了,对不对?来下面大家看好,我们在这来刷新,然后下面大家看啊。
07:14
大家说有没有啊?有没有这个键值,对啊,请求头里面没有吧,那host是固定的,那不就是local host冒号8080吗?怎么可能会8081呢,是不是啊,咱们tomcat的端口号,咱们用的是默认的8080呢,是不是啊,所以说下边咱们点击之后大家看看好啊,这个报的错。能看懂吧,是什么?404 OK吧,OK吧,好,大家注意,我们在这咱们一共讲了这几个属性了,四个属性,如果我们当前的请求没有跟任何一个request method的value匹配,报404对不对?如果请求方式匹配不了,报405,请求方式不被支持对不对?如果我们当前的请求参数匹配不成功,报的是400,说的是我们当前咱们的我们所传输过来的参数是什么,对吧?我们需要的参数是什么?而我们真实传输的参数是什么?能听懂吧?好,如果咱们的请求头信息匹配不成功,报的仍然是什么?错404,能听懂吧?哎,所以大家要注意咱们当前所讲的这四个属性里面,如果说匹配不成功的话,报的错是什么?那咱们以后如果说遇到了,咱们是不是也能够快速的解决。
08:37
对不对啊行,这个大家要注意啊,好,那咱们在这如果说你写了个8080好使不好使啊,行,那咱们先让它这个重新部署,然后下面咱们来看一下咱们的笔记,大家注意看好,若当前请求满足request making注解的value和method的属性,但是不满足什么hes属性,此时页面显示什么404错误资源未找到,就不再是400和405了,知道吧,直接就是404啊好,下面呢,我们再来看我们的浏览器来刷新,然后来点击大家看好什么好是。
09:16
能看懂吧啊。
我来说两句