00:00
Hello,大家好,这个小节呢,咱们使用a think和wa做一个结合来发送S请求。首先呢,我们这先封装一个函数。啊,Sends这个函数呢,有一个作用就是啊,发送阿贾克斯请求。啊,然后呢,返回的结果呢,返回的结果是一个promise对象。啊,有这样一个作用,好,然后因为咱们这儿封装了一个主要的目标是a think和wa,就是我们的主要矛盾是a thinkwa,所以说在发送阿贾克斯这块的函数封装呢,我们把它做简单一点,就只发送一个get请求,而里边传一个URL地址的参数就OK了。好,然后现在咱们开始做一下啊,第一步就是创建对象。啊,OK,然后呢,呃,这个cost,然后X等于一个new的xmlhttp request第一步,然后第二步呢,是做一个初始化x.open第一个参数类型我们写get,第二个参数给谁发,我们写URL,好,下边呢,第三个是做一个发送x.send第四步呢是做一个实践绑定。
01:22
哎,事件绑定,然后x.on ready state change,然后function,我们在里面做判断,如果说x.ready state等于一个四。然后里边开始做状态码判断,如果X点点大于一个200分大于等于200,并且X点点小于一个300,则表示成功。那我们这个时候呢,回过头来看一下啊,我们的需求呢,返回结果是一个promise对象,但但是你看一看我们这这个时候。在哪去返回这个对象呢?你会发现没有位置可以写,同学说强哥你写这是吧,New promise写这儿不行,为什么呢?因为此时咱这个return是在这个函数内部的,你不能作为外层这个函数的返回结果。
02:13
所以说我们这样来做一下,Return一个new的promise OK,然后呢,放到下边来。这个时候的话,我们就可以呢来完成这个事情了,如果说这儿呢,你成功了对不对,哎成功了,成功的话我们就调resolve。来把响应题来设置它为成功的值啊,成功的结果还有个x.response好,那如果说失败了怎么办呢?啊,如果失败。那我就将这个响应状态码来作为失败的这个结果x.status。OK,搞定,这样的话呢,我们就已经完成了一个封装,下边我们开始来做一个测试。
03:03
好,然后。Send a,贾克斯,然后咱们给谁发呢?咱们找一个接口。点开这里有个段子接口。好,来了啊,把它复制一份,然后拿过来放到这,我们先看看这个结果,好吧,Cost result等于log,打印一下result保存。切过来看这啊,然后刷新它是一个promise对象,没有错,然后接下来的话,咱们这样子就是用谁用这个Z方法直接跟着去处理它then,然后下边value第一个回调,然后reason第二个回调,我们先看第一个就行了啊在这儿啊consult log打印一下这个value保存。你看结果。看这啊,那么这个结果是什么,就是咱们刚才那个。接口的返回的响应题。
04:02
啊,是这么多东西啊,没有问题,好,那下边呢,我们来用a think和wa来实践一下啊,这个是promise z方法的一个测试,而下边这块我们使用think与wa测试一下,首先我得先有一个I think函数asy c,然后发个神main,然后下边我来调一下这个函数main。在里边呢,我们开始向他发请求,发送jas请求怎么发呢?Sendjas参数还是要放进来在这。放进来,放进来以后它的返回结果是一个promise,刚好我们wait表达式右边需要一个promise对象。太好了是吧,而且呢,Wait还能够得到它成功的一个结果,OK,那咱在前面写一个啊,来一个let result等于它,然后接下来打印这个结果,Log result。
05:05
保存。看一下啊,点开浏览器在这儿刷新。好,你看街舞来了第48行,咱们对照一下48行输出没有问题。好,如果说你还要向别的地方发请求,可不可以呢?也可以啊,比方说啊,再次测试,我们写一个let,然后也是一样子啊,这来个天气啊,等于一个。点空格,然后send as,再去找一个URL地址点开,然后接口填写。好,复制一下,拿过来往这儿放,这是URL接口啊,我们来看看这个结果行不行啊,保存切过来点开它。大家看这啊,可能还不清楚啊,咱们通过network来看,然后把这个停一停,从来点开点开它。
06:00
你看这是吧,这是咱们这个网络控制台显示返回的结果,而cancel这块呢,是直接把这个结果做了一个输出ctd是吧,在这啊,这看的不是很清是吧,你看after after,我用这个来标注一下。是吧,这些都是响应题,结果好,没有问题,你回过来看一看代码。你回过头看看代码,你会发现呢,获取这个阿贾克斯,它的返回的结果是如此的简单。啊是如此简单,而且以后呢,我们会有一个Excel的这样一个,就是咱们前端生态里边有Excel这样一个啊NPM包。它的返回结果就是一个promise对象,所以说用它去发请求,用wait来接结果啊,真的是太方便了,特别特别方便啊。好了,那么这个小节呢,咱们使用a thinkwa来结合发送Jack请求的案例就先到这。
我来说两句