温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
Hello,大家好,那么这一个小节呢,我们接着来做promise的封装练习,我们准备呢,封装一个函数,名字叫做send阿贾克斯,它呢,用来发送get阿贾克斯请求。然后那下边的话,他接受一个参数,这个参数是URL,我们这里因为重点是在于promise,所以说功能这块我们只完成一个,就是完成get请求。然后在返回的结果这块呢,也是一个promise对象,好了,我们下边的话来做一下。首先,Function。这个函数名要放进来。它有一个参数是URL。好了,然后返回的结果呢,是一个promise对象。把这结构我们都先搭建好。那么搭建好之后呢,开始写阿贾克斯的那四个操作。那么第一个操作就是先创建xmlhttp request这个对象,然后第二步的话是做初始化open。
01:00
Get,然后给谁发,给URL发,然后X HR send进行发送,最后呢是处理结果,处理结果需要绑定事件,这个咱们已经写过了。然后在里边做判断。先对这个ready state啊这个状态去做一个判断,它必须是V4啊,因为V4的话是所有结果都返回时的一个啊这样的一个状态,然后在里边的话是对成功。和结果呢进行一个判断。好,那么什么时候为成功呢?当状态码为二叉叉的时候为成功,好,X h2点大于等于200。然后呢,并且XHR点呢小于一个300。如果是这样一个情况,没成功,成功应该做什么事情成功,我们应该调resolve函数。那么失败的话,我们调谁调reject好了,顺便呢,再设定一下成功和失败的结果,成功的结果为响应体啊,我们这里把响应体放进来,Xh2.response。
02:06
好,那么下边的话失败结果我们设定为响应的状态码。搞定,那么这样的话,我们就把这个函数封装完了,封装完之后接下来就可以用了。比方说我们需要给。远端一个URL去发送阿贾克斯请求,我们再次把这个接口拿过来。好,把它放到里边来,放到里边来之后呢,怎么去对这个结果进行处理呢?哎,我们就直接写Z。成功走第一个,然后呢,失败走第二个。这样一封装阿贾克斯的请求发送也变得非常非常简单,O。点log。打印一下value啊,如果说是失败的话,Consult war警告把这个。响应的结果,就把这个响应状态码在控制台做一个输出。
03:00
好了,我们点开,一起来看看效果。好,此时的话应该是一个成功的阿贾克斯请求已经是完成,响应体已经回来了。当然这个数据咱们是可以。格式是可以调整的。啊,Response type。Type等于个杰森。啊,当然大家如果说对阿贾克斯不是很特别熟的话啊,大家可以到上硅谷的这个官网,或者说到这个哔哩哔哩上柜谷的官方账号当中去找专门的阿贾克斯的课程,好再来看看这个结果刷新。这就是成功请求成功之后的检验结果,那下边的话咱可以看看失败的哦,我的请求呢,啊,把URL稍微调整一下结果来刷新一面看这。啊,是一个黄色的输出404。好了,那么到这儿的话,关于我们使用promise来封装阿贾克斯的请求操作,我们就先到这。
我来说两句