AJAX & JSON

145 阅读1分钟

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

AJAX技术 不需要刷新页面的情况下,就可以产生局部刷新的效果

最初AJAX技术操作的是XML标签,现在绝大多数情况下操作的是JSON格式的字符串

1. json格式数据

// json对象
// 注意:对象的属性名,必须要双引号引起来
let obj = {
    "name": "张三",
    "age": 20,
    "gender": "男"
}
// json数组
let arr = [
    {
        "name": "张三",
        "age": 20,
        "gender": "男"
    },
    {
        "name": "李四",
        "age": 22,
        "gender": "女"
    }
]

2. AJAX对象

// 01.创建xhr对象 (原生ajax对象)
let xhr = new XMLHttpRequest()
// 02.初始化请求(GET请求,POST请求)
// 第一个参数是请求方式:比如GET,第二个参数是请求地址:比如192.168.11.12:81/Server/List
xhr.open('GET','./data/koubei.json')
// 03.发送请求
xhr.send()
// 04.监听读取状态改变事件
xhr.onreadystatechange = function(){
    // 请求已经完成
    if(xhr.readyState===4){
        // 请求状态为成功
        if(xhr.status === 200){
            // xhr.responseText 返回响应体,它是一个json格式的字符串
            // 我们需要将该字符串转为js对象
            let data = JSON.parse(xhr.responseText)
        }
    }
}

readyState 是读取状态:

0: 请求未发送

1:服务器连接已建立(请求已经发送)

2:请求已接收(服务器已经接收到该请求)

3:请求处理中(服务器正则准备你要的数据)

4:请求已完成,且响应已就绪

status 是响应的状态码:

200:成功

404:请求资源错误

500:服务器端错误