ajax理论
// ajax 是指一种创建交互式网页应用的网页开发技术
// 这里的交互指客户端和服务器的数据是可以相互传递和使用的
// 服务器端 和 客户端
// XML ==> JSON 一种类似于HTML的标记语言,可以将数据结构化,XML已经被JSON淘汰了
// 异步 异步指程序可以同时执行,同步指程序需要按照顺序执行
// ajax 产生 的背景 以前做数据交互的时候,大家通常选择使用表单的方式提交数据,表单提交这种方式,默认的时候会由当前页面跳转到action页面,所以用户体验及其糟糕
// ajax 的特点 在不提交整个页面的前提下 实现页面的异步局部刷新 (指不刷新当前页面,把某些数据传递给服务器,把对应的数据从服务器拿回客户端)
// ajax 必须需要一个服务器的环境 (Live Server 起服务 本地的假服务 )
// xhr.readyState 请求的状态
// 0 请求未初始化 (只是创建了请求,还未进行任何的操作)
// 1 请求已经建立,但是还没有发送 ,只是配置了请求相关的数据信息
// 2 请求已经发送 但是正在出来中 (获取一些响应头数据 )
// 3 后端正在处理数据中, 通常来说 已经有部分响应的数据可以使用 但是服务器还没有完全完成数据的响应
// 4 响应已经完成 返回响应的结果 (请求成功 请求失败 服务器异常 success fail )
// xhr.status 服务器返回给客户端 响应状态码 (HTTP状态码)
// 1** 信息,服务器收到请求,需要请求者继续执行操作 pending
// 2** 成功,操作被成功接收并处理
// 3** 重定向,需要进一步的操作以完成请求
// 4** 客户端错误,请求包含语法错误或无法完成请求
// 5** 服务器错误,服务器在处理请求的过程中发生了错误
// 200 : ok ajax请求正常打开 并且得到完整的响应数据
// 301 : 被请求的资源数据已经永久的异动到新位置 重定向
// 302 : 被请求的资源数据已经临时从不同的URL 响应请求
// 304 : 缓存
// 404 : ajax请求不存在
// 403 : 权限不够禁止访问
// 500 : 服务器端代码出现错误
// 503 : 服务器维护或者过载现象 服务器当前无法处理请求
// 1. 创建 ajax 请求对象(构造函数创建)
// 2. 配置了请求相关的数据信息
// 3. 发送请求
// 4. 等待服务器(后端) 响应
// XML 已经被淘汰了
// json数据 (json类型的字符串) 前后端交互的一种轻量级的数据形式 (字符串)
// 对象和数组组成 嵌套组成
// 基本组成数据格式 字符串 数字 boolean null 数组 对象 ( undefined function 不能使用 )