同步和异步请求

Tags
webapi
Created
Apr 9, 2015 4:51 AM

同步:一步步来,单线程

异步:在没有加载完就执行后面的代码,所以要注册请求状态用以监视来执行回调函数(服务器接收了请求如何响应)

https://developer.mozilla.org/zh-CN/docs/Web/API/XMLHttpRequest/Synchronous_and_Asynchronous_Requests

var request = new XMLHttpRequest(); //创建对象 request.open('GET', 'https://developer.mozilla.org/', false); //初始化同步请求 request.send(null);//发送请求 if (request.status === 200) {   console.log(request.responseText); }//回调函数

>undefined

var request = new XMLHttpRequest(); request.open('GET', 'https://developer.mozilla.org/', true); //异步请求 request.send(null); if (request.status === 200) {   console.log(request.status); }

>undefined

GET

https://developer.mozilla.org/zh-CN/

var request = new XMLHttpRequest(); request.onreadystatechange = mantou;//注册状态监视函数 request.open('GET', 'https://developer.mozilla.org/', true); //异步请求 request.send(null); function mantou(){if (request.status === 200) {   console.log(request.status); }}

>undefined

GET

https://developer.mozilla.org/zh-CN/ [HTTP/1.1 200 OK 8424ms]

200

SuperMade with Super