00:00
好,那下面呢,我们就通过咱们的post,然后来发送一个请求,然后咱们就来测试一下我们当前咱们所说的这两种不同方式,以不同方式传输,传输的这个请求参数咱们该如何获取啊,首先呢,这是我们的请求地址。还记得吧,在post里面两个参数吗?对吧,然后是以post方式发送的请求,第一个是请求地址,然后第二个是咱们的data,大家看啊,在我们的API里面,大家看到的这个API中加上方括号的内容是可以省略不写的。知道吧,这个大家注意,也就是说我们当前的config,也就是请求配置,咱们可以不写,这个data咱们也可以不写。这样的啊,好,那你没有data,那不就是没有请求参数吗?那咱们只要知道请求地址就可以,OK吧,行,那在这咱们把请求地址写一下,然后怎么去写啊,然后因为这里面的内容可能比较长,然后那我们这样,咱们先写第一个URL,然后在这大家注意你可不能随便去写这个路径啊,比如说我们现在咱们要来写一个test阿贾克斯,然后咱们能这样去写吗?不能,为什么,因为这个路径是绝对路径,而我们当前阿贾克斯中所写的绝对路径,然后是由浏览器解析的,所以说的前面呢,是少一个上下文路径的,知道吧,那咱们的上下文路径是谁呀?是不是就是这个spring VC,所以说我们一定要在这个路径前面给它加上一个斜线,然后spring mvc。
01:32
这个大家看好,有同学老师你怎么不使用咱们的SIM leaf呢?你咋不使用这个东西呢?大家注意啊,这是咱们的GS代码里面用不了,知道吧,好,然后那我在这个位置我来干什么?大家看好,我来传一个ad等于1001,这个就是我们当前传输过去的name等于y and name等于value的方式。我说老师为什么你不写S,我再跟大家说一遍,如果说你用的是pers的话,我们最终咱们传输的请求参数,它仍然会被拼接到请求地址后,以name等于value and name等于value的方式发送,所以说我在这直接把它拼接在请求地址后就可以知道吧。然后第二个大家看好第二个参数是什么,是data,然后是以阶层格式的方式传输请求参数,然后这个大家注意你在这写的这个数据长什么样,它就是原样传输的服已经原样传输的服务器中的,比如说我在这写个userna。
02:30
对吧,然后这是order me,然后咱们再来写一个password password,然后冒号123456 OK啊,然后设置完之后在这个地方是不是要写一个then,对吧?然后里边是咱们当前服务器响应回来的对象,然后通过cons log,然后直接把response data给输出,我再说一遍,然后咱们的这个response来封装了,我们服务器响应回来的结果,封装到哪一个属性中了,Response data这个属性中了啊好,那我们下面就可以来测试一下了呀,找到我们的控制层,然后下面大家看a request mapping,我们需要来处理的请求叫test,斜线阿贾克斯,然后public,然后咱们来返回一个什么呢?咱们也不知道返回啥。
03:22
你在这先写个string呗,咱们也不知道对不对,一会再说啊,好大括号,首先大家看我们现在传输过来的请求参数啊,有两种,一种是这个name等于value and name等于value的方式,大家看这一种请求参数,我们现在咱们只能干什么,我们啊,咱们是可以直接通过request.get parameter获取的,所以说这种就是咱们之前咱们所用的普通的请求参数,所以说我们在SPVC中,我们是不是就可以直接通过控制器方法的行参来获取了,比如说在这写个ineg ID就可以直接获取,那但是我们当前咱们的这个请求参数该如何获取呢?
04:03
这样咱们先把咱们当前的阿贾克斯请求啊,先给它跑通了OK吧,然后跑通完之后,让咱们的服务器处理完之后,咱们来响应回来一个结果,然后最后咱们再处理这个东西啊来大家看。好,然后我们在这咱们怎么做,首先大家看好,你说我现在能直接在这一个字符串吗?然后我在这来创建一个啥,然后咱们在这创建一个s success,这是咱们的成功页面heuses,大家说你能这样去写吗?应该不行吧,对吧,为什么sus,因为我们现在要来处理的是阿贾克斯请求啊,咱们的阿贾克斯是在页面不刷新的情况下与服务器进行交互,那你知道你写的这是什么意思吗?就是我们在处理阿贾克斯的时候,你在服务器中怎么样啊,给他响应回去了一个页面。是不是,那我们阿贾克斯专门来实现的就是一个局部刷新对吧,然后我们在服务器中,咱们是不是不能以转发和重定向来作为结果,当然它不会报错,它只会将我们转发到的页面或重定向到的页面,然后响应到浏览器。
05:16
是不是然后响应到我们当前咱们的response的data里面是这样的啊,所以说呢,我们之前咱们在学习阿贾克斯的时候,我们在服务器中是怎么来处理这个结果的啊,是不是只能用response.get right.right或点print方法响应浏览器数据,那我们现在咱们该怎么做?大家说我们在这儿呢?咱们还能返回字符串吗?不能,在这儿它不需要有返回值,大家看啊,我现在只是以我们学过的知识来处理它的知道吧。至于spring VC为我们所提供的特有的方式,该如何处理阿贾克斯请求,该如何响应浏览器数据,咱们一会再说。好,那我们现在是不是需要有一个response,那来呗,逗号对吧,咱们之前说过,然后像咱们的response,还有咱们的request是不是都可以直接放在行参位置,然后由我们当前dispatch of在调用它的时候,然后来为我们的行参赋持。
06:15
所以说我们在这是可以直接使用response的啊,好,然后下面咱们在这来把这个ID的值,然后给它输出一下,加上ID,然后下面直接response.get right.print然后或者说是right都可以,然后咱们响应回去一个hello,逗号X AX iOS行啊好,因为这个涉及到流,所以说我们现在需要来处理异常,然后咱们直接把它给添加到我们方法的声明中就行,其实也就是添加到这个位置,因为这个方法它不是我们自己调用的嘛,对不对,如果是我们自己调的,那咱们肯定要传开启,那如果说我们现在这个方法是由咱们的系统去调用的,那咱们直接去把这个异常给声明出来就行啊。
07:03
好,然后我们现在咱们再来一个重新部署,大家都知道它会有什么样的效果吗?我们现在咱们来点击这个按钮,点完之后,然后是不是会向咱们的服务器发送一个请求,然后咱们的服务器给我们响应回来的一个字符串,然后叫做什么hello X啊好,然后我们现在咱们来一个刷新,你看这个超链这个按钮就有了,把F12给打开,大家应该都认识这一句话,就是cons.log干嘛的,将其中的数据是不是以日志的方式输出到浏览器的控制台,所以说我们现在把conso给打开,大家看点击你看hello XS是不是就有了,然后我们现在咱们再来找到我们的这个I idea的控制台,大家看ID1001是不是就能够获取到,对不对,或者说大家也可以来看一下这个地方,你看这个地方,你看这就是我们发送的阿贾克斯请求,然后呢,我们当前咱们的这个大家往下看啊,啊,或者是应该来看这个里面啊。
08:03
来看这儿,大家注意,这个就是我们当前咱们所传输的数据,这个叫query string parameters。Query string,这个大家还认识不?啊,我不知道这个方法大家认识不认识啊,在咱们的request对象里面有一个叫做get query string方法,它就是专门来获取咱们的请求地址后所拼接的这个请求参数的,知道吧,这样的啊,好,然后所以说这个地方咱们看到的就是ID1001,然后咱们再来看这个啊,这个就是我们当前的请求题有同老师的对吧,这怎么长的是这样的呢?你看上面这个,或者说你看谁点击view source叫做展示源码对吧?这个是咱们的浏览器处理之后的一个结果,你直接点这个,你看看这是不是就跟我们在这儿咱们所设置的这个数据是一模一样的,对不对,对吧?所以说大家看好啊,如果说我们以data的方式,我们以data的方式来传输的请求参数,它是会被保存到咱们请求报文的请求体中的,你传输过来的,你的data设置的数据长什么样,咱们传输过去的数据它就长什么样。
09:12
能看懂吧,好啊。行,好,那所以说我们现在咱们是不是就能够看到这个效果,然后我们当前阿贾克斯能够发送到服务器中,服务器呢,也能将结果响应到我们当前的浏览器,没有问题啊好,那我们下面咱们来考虑一个问题,这个请求参数咱们可以获取,那这个请求参数咱们该如何获取呢?因为这个东西以后咱们用的是很多很多的,特别是咱们的,咱们先说阿贾克斯的一个地位。以后如果说我们在项目中要实现一个前后端分离,那我们页面中基本上所有的请求用的都是阿贾克斯。对不对,那所以说呢,那我们现在呢,那我们所发送到浏览器中的这个请求参数是不是就有两种,这一种跟这一种,这一种咱们都知道该如获取,关键是这种请求参数如何获取呢。
10:03
大家想想对不对,对为这种请求参数咱们以后用的也很多呀,为啥呀,因为我们在这咱们用的是will加X对吧,然后我们当前在我们的这个模型数据dat这个data里面对不对,我们是不是也经常会去创建一些啥呀,去创建一些比如说咱们的杰森对象,或者说是杰森数组,然后把这些对象跟咱们页面中的表单项来进行双向绑定,然后呢,当我们的页面中的一些表单项输入了数据之后,那我们当前的这个,对,那我们当前在data里面所设置的这个模型数据,然后是不是就可以来获取到这些输入的数据,然后那我们比如说要提交提交数据,比如说添加功能,修改功能,那我们现在是不是就可以直接把这里面的什么,把这里面的这个接森对象或杰森数组,然后直接作为data把它给传输到服务器中。OK吧,所以说咱们这种操作,以这个以后咱们阶层格式的请求参数是非常多的啊好,那所以下面咱们就要考虑这个数据该如何获取了啊来。
我来说两句