从阿贾克师(ajax)说起

阿贾克师

一朋友出去面试回来对我说面试情况,他说面试官问阿贾克师,当时老懵逼了,what ?阿贾克师?(原谅我们年少时候的无知😢)。自此阿贾克师就成为我们一群人的ajax代名词。细想其实也没错吧!本来就念阿贾克师嘛。

AJAX = Asynchronous JavaScript and XML(异步JavaScript和XML)

先上一段原生ajax压压惊:

function CreatXmlHttp() {
  const httpRequest = new window.XMLHttpRequest() || new window.ActiveXObject()
  httpRequest.open('get', 'http://localhost:3000/adminusers/list', true)
  httpRequest.send()
  httpRequest.onreadystatechange = () => {
    console.log(httpRequest.readyState) // 2 3 4
    console.log(httpRequest.status) // 200 200 200
    if (httpRequest.readyState === 4 && httpRequest.status === 200) 
    { 
     console.log(httpRequest.response)
    }
  }
}
API
  • onabort 用户取消 (function)
  • onprogress 返回进度信息 (function) (可用来做进度条)
  • onerror 发生错误 (function)
  • onload 传输成功完成 (function)
  • loadstart 传输开始 (function)
  • loadEnd 传输结束 (function)
  • readyState:XMLHttpRequest对象的状态,等于4表示数据已经接收完毕。
  • status:服务器返回的状态码,等于200表示一切正常。
  • responseText:服务器返回的文本数据
  • responseXML:服务器返回的XML格式的数据
  • statusText:服务器返回的状态文本。

在来看看上面的的输出结果:

console.log(httpRequest.readyState) // 2 3 4
console.log(httpRequest.status) // 200 200 200

为什么会这样?这就是我们要来说道说道的东西了..(明天再说了)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容