AJAX概述
Web 程序最初的目的就是将信息(数据)放到公共的服务器,让所有网络用户都可以通过浏览器访问。
1 | //1.在此之前,我们可以通过以下几种方式让浏览器发出对服务端的请求,获得服务端的数据: 地址栏输入地址,回车,刷新 特定元素的 href 或 src 属性 表单提交 a标签 |
AJAX(Asynchronous JavaScript and XML),是指使用JavaScript和XML进行异步刷新局部网页的技术。不是一种新的编程语言,是基于JavaScript、XML、HTML、CSS新用法。它使我们可以通过 JavaScript 直接获取服务端最新的内容而不必重新加载页面。让Web更能接近桌面应用的用户体验。
说白了,AJAX 就是浏览器提供的一套 API,可以通过 JavaScript 调用,从而实现通过代码控制请求与响应。实现网络编程。
1 | //同步(web1.0):请求1-->等待-->响应1-->请求2-->等待-->响应2… |
AJAX核心概念
1 | //1.JavaScript:更新局部的网页 |
快速使用
1 | //Ajax的常用方法和属性 |
readyState 状态描述说明
时间轴!
1 | var xhr = new XMLHttpRequest()console.log(xhr.readyState)// => 0// 初始化 请求代理对象 xhr.open('GET', 'time.php')console.log(xhr.readyState)// => 1// open 方法已经调用,建立一个与服务端特定端口的连接 |
通过理解每一个状态值的含义得出一个结论:一般我们都是在 readyState 值为 4 时,执行响应的后续逻辑。
1 | xhr.onreadystatechange = function () { |
遵循 HTTP
本质上 XMLHttpRequest 就是 JavaScript 在 Web 平台中发送 HTTP 请求的手段,所以我们发送出去的请求仍然是HTTP 请求,同样符合 HTTP 约定的格式:
1 | xhr.open('GET', './time.php') // 设置请求报文的请求行 |
- 本文作者: gtt
- 本文链接: https://gtt011029.github.io/posts/37767/