Ajax

博客介绍利用JavaScript异步通信,从服务器获取XML文档数据更新网页对应部分,无需刷新整个页面。还阐述了实现步骤,包括创建XMLHttpRequest对象、HTTP请求,设置响应状态处理函数,发送请求及获取数据。

通过JavaScript的异步通信,从服务器获取XML文档中提取数据,再更新当前网页的对应部分,而不用刷新整个网页

  1. 创建XMLHttpRequest对象
  2. 创建一个HTTP请求
  3. 设置响应HTTP请求状态变化的处理函数
  4. 发送HTTP请求
  5. 获取请求到的数据
// promise 封装实现:

// promise 封装实现:
var url="https://www.fastmock.site/mock/3fb072dbb16cca4c775a62f70d4d873a/test/simple"
function getJSON(url) {
  // 创建一个 promise 对象
  let promise = new Promise(function(resolve, reject) {
    let xhr = new XMLHttpRequest();

    // 新建一个 http 请求
    xhr.open("GET", url, true);

    // 设置状态的监听函数
    xhr.onreadystatechange = function() {
      if (this.readyState !== 4) return;

      // 当请求成功或失败时,改变 promise 的状态
      if (this.status === 200) {
        resolve(this.response);
      } else {
        reject(new Error(this.statusText));
      }
    };

    // 设置错误监听函数
    xhr.onerror = function() {
      reject(new Error(this.statusText));
    };

    // 设置响应的数据类型
    xhr.responseType = "json";

    // 设置请求头信息
    xhr.setRequestHeader("Accept", "application/json");

    // 发送 http 请求
    xhr.send(null);
  });

  return promise;
}
getJSON(url)
.then(res=>{
	console.log(res)
})
.catch(err=>{
	console.log(err)
})
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值