AJAX---响应数据格式

响应数据格式

 

提问:如果希望服务端返回一个复杂数据,该如何处理?

 

关心的问题就是: 服务端发出何种格式的数据,这种格式如何在客户端用 JavaScript 解析。

 

XML

一种数据描述手段
比较老, 基本现在的项目不用了。
淘汰的原因:数据冗余太多

 

JSON

也是一种数据描述手段,类似于 JavaScript 字面量方式
服务端采用 JSON 格式返回数据,客户端按照 JSON 格式解析数据。

不管是 JSON 也好,还是 XML,只是在 AJAX 请求过程中用到,并不代表它们之间有必然的联系,它们只是 数据协议罢了

 

  <script>
    var xhr = new XMLHttpRequest()
    xhr.open('GET', 'test.php')
    xhr.send()
    // 我们通过代码告诉请求代理对象,服务端响应给我们的是 JSON
    xhr.responseType = 'json'
    xhr.onreadystatechange = function () {
      if (this.readyState !== 4) return
      console.log(this.response)
      // this.response 获取到的结果会根据 this.responseType 的变化而变化
      // this.responseText 永远获取的是字符串形式的响应体
    }
  </script>

 

 

posted @ 2020-02-07 17:18  jane_panyiyun  阅读(268)  评论(0编辑  收藏  举报